php中和數組創建生成的函數有很多,用於定義數組的函數array(),數組合並函數array_combine(),還有array_fill(),array_fill_keys(),range()等等。
要創建一個數組可以用下面的簡單快捷方法:
1 $arr = [1, 2, 3, 4, 5];
還可以用array()函數來創建一個數組:
1 $fruits = array ( 2 "fruits" => array("a" => "orange", "b" => "banana", "c" => "apple"), 3 "numbers" => array(1, 2, 3, 4, 5, 6), 4 "holes" => array("first", 5 => "second", "third") 5 );
這個函數可以創建索引數組,關聯數組,或者二者雜合的數組。
array_combine()函數用一個數組的值作鍵,一個數組的值作值,也可以生成索引或是關聯數組:
1 $arr1 = [ 1, 2, 3, 4 ]; 2 $arr2 = [ 1, 2, 3, 4 ]; 3 var_dump( array_combine( $arr1, $arr2 ) ); 4 // array(4) { 5 // [1] => 6 // int(1) 7 // [2] => 8 // int(2) 9 // [3] => 10 // int(3) 11 // [4] => 12 // int(4) 13 // }
range()函數主要用於創建一定范圍有連續順序的索引數組
1 foreach (range(0, 12) as $number) { 2 echo $number; 3 } 4 // 0123456789101112
array_fill()函數主要用於創建具有相同元素的數組
1 $arr = array_fill(5, 6, 'banana'); 2 print_r($arr); 3 // Array 4 // ( 5 // [5] => banana 6 // [6] => banana 7 // [7] => banana 8 // [8] => banana 9 // [9] => banana 10 // [10] => banana 11 // )
array_fill_keys()函數主要用於創建相同元素,但元素對應的鍵不同的數組
1 $keys = array('foo', 5, 10, 'bar'); 2 $arr = array_fill_keys($keys, 'banana'); 3 print_r($arr); 4 // Array 5 // ( 6 // [foo] => banana 7 // [5] => banana 8 // [10] => banana 9 // [bar] => banana 10 // )