array_combine() 函數經過合併兩個數組來建立一個新數組,其中的一個數組元素爲鍵名,另外一個數組的元素爲鍵值。php
語法:array_combine(keys,values)html
參數:數組
keys:必需,規定數組的鍵名;函數
values:必需,規定數組的鍵值;ui
返回值:返回合併後的數組。若是兩個數組的元素個數不相同,則返回 FALSE。指針
<?php $keys = ['張三', '李四', '王五']; $values = [34, 25, 44]; $arr = array_combine($keys, $values); var_dump($arr); // array(3) { ["張三"]=> int(34) ["李四"]=> int(25) ["王五"]=> int(44) }
range() 函數建立一個包含指定範圍的元素的數組。code
語法:range(low,high,step)htm
參數:排序
low:必需。規定數組元素的最小值。索引
high:必需。規定數組元素的最大值。
step:可選。規定元素之間的步進制。默認是 1。
返回值:返回一個包含從 low 到 high 的元素的數組。
註釋:若是 low 參數大於 high 參數,則建立的數組將是從 high 到 low。
<?php $arr1 = range(0, 9); // 建立一個0-9之間的數組; $arr2 = range(a, z); // 建立一個a-z之間的數組; $arr3 = range(a, z, 10); // 建立一個步長爲10的a-z之間的數組;
compact() 函數建立一個包含變量名和它們的值的數組。
語法:compact(var1,var2...)
參數:
var1:必需。能夠是帶有變量名的字符串,或者是一個變量數組。
var2:可選。能夠是帶有變量名的字符串,或者是一個變量數組。容許多個參數。
返回值:返回帶有全部變量名和它們的值的數組。
註釋:任何沒有變量名與之對應的字符串都被略過。
<?php $firstname = 'zhangsan'; $lastname = 'lisi'; $age = '42'; $result = compact('firstname', 'lastname', 'age'); // 參數爲變量字符串 var_dump($result); // array(3) { ["firstname"]=> string(8) "zhangsan" ["lastname"]=> string(4) "lisi" ["age"]=> string(2) "42" } $name = array('firstname', 'lastname'); $result = compact($name, 'location', 'age'); // $name爲變量數組。location沒有對應的值 var_dump($result); // array(3) { ["firstname"]=> string(8) "zhangsan" ["lastname"]=> string(4) "lisi" ["age"]=> string(2) "42" }
array_fill() 函數用給定的鍵值填充數組。
語法:array_fill(index,number,value);
參數:
index:必需。規定返回數組的起始索引。
number:必需。規定填充的元素的數量,其值必須大於 0。
value:必需。規定用於填充數組的鍵值。
返回值:返回填充的數組。
<?php $arr = array_fill(3, 4, 'blue'); // 從索引3開始,填充4位,都填充blue var_dump($arr);
array_chunk() 函數把一個數組分割爲新的數組塊.
語法:array_chunk(array,size,preserve_keys);
參數:
array:必需。規定要使用的數組。
size:必需。一個整數,規定每一個新的數組塊包含多少元素。
preserve_key:可選。可能的值爲:true - 保留原始數組中的鍵名。false - 默認。每一個新數組塊使用從零開始的索引。
返回值:返回一個多維的數值數組,從 0 開始,每一個維度都包含 size 元素。
<?php $age_arr = array('zhangsan' => 20, 'lisi' => 30, 'wangwu' => 40); $new_arr = array_chunk($age_arr, 2, true); // 拆分爲多維數組,並保留原始數組中的鍵名 var_dump($new_arr); //array(2) { [0]=> array(2) { ["zhangsan"]=> int(20) ["lisi"]=> int(30) } [1]=> array(1) { ["wangwu"]=> int(40) } }
array_merge() 函數用於把一個或多個數組合併爲一個數組。
語法:array_merge(array1,array2,array3...)
參數:
array1:必需。規定數組。
array2:可選。規定數組。
返回值:返回合併的數組。
<?php $arr1 = array('zhangsan', 'lisi'); $arr2 = array('wangwu', 'zhaoliu'); $new_arr = array_merge($arr1, $arr2); var_dump($new_arr); // array(4) { [0]=> string(8) "zhangsan" [1]=> string(4) "lisi" [2]=> string(6) "wangwu" [3]=> string(7) "zhaoliu" }
array_slice() 函數返回數組中的選定部分。
語法:array_slice(array,start,length,preserve)
參數:
array:必需。規定數組。
start:必需。數值。規定取出元素的開始位置
length:可選。數值。規定被返回的數組的長度。
preserve:可選。true,保留鍵名。false,默認,重置鍵名。
返回值:返回數組中選定的部分。
<?php $arr = array("red","green","blue","yellow","brown"); $new_arr = array_slice($arr, 2, 2, true); var_dump($new_arr); // array(2) { [2]=> string(4) "blue" [3]=> string(6) "yellow" }
array_diff() 函數用於比較兩個(或更多個)數組的鍵值,並返回差集。
語法:array_diff(array1,array2,array3...);
參數:
array1:必需。與其餘數組進行比較的第一個數組。
array2:必需。與第一個數組進行比較的數組。
array3:可選,與第一個數組進行比較的其餘數組。
返回值:返回一個差集數組,該數組包括了全部在被比較的數組(array1)中,可是不在任何其餘參數數組(array2或 array3 等等)中的鍵值。
<?php $arr1 = array('a' => 'red', 'b' => 'green', 'c' => 'blue', 'd' => 'yellow'); $arr2 = array('e' => 'red', 'f' => 'green', 'g' => 'blue'); $arr3 = array('a' => 'red', 'b' => 'black', 'h' => 'green'); $result = array_diff($arr1, $arr2, $arr3); var_dump($result); // array(1) { ["d"]=> string(6) "yellow" }
array_intersect() 函數用於比較兩個(或更多個)數組的鍵值,並返回交集。
語法:array_intersect(array1,array2,array3...);
參數:
array1:必需。與其餘數組進行比較的第一個數組。
array2:必需。與第一個數組進行比較的數組。
array3:可選。與第一個數組進行比較的其餘數組。
返回值:返回一個交集數組,該數組包括了全部在被比較的數組(array1)中,同時也在任何其餘參數數組(array2或 array3 等等)中的鍵值。
<?php $arr1 = array('a' => 'red', 'b' => 'green', 'c' => 'blue', 'd' => 'yellow'); $arr2 = array('e' => 'red', 'f' => 'green', 'g' => 'blue'); $arr3 = array('a' => 'red', 'b' => 'black', 'h' => 'green'); $result = array_intersect($arr1, $arr2, $arr3); var_dump($result); // array(2) { ["a"]=> string(3) "red" ["b"]=> string(5) "green" }
array_search() 函數在數組中搜索某個鍵值,並返回對應的鍵名。
語法:array_search(value,array,strict)
參數:
value:必需。規定在數組中搜索的鍵值。
array:必需。規定被搜索的數組。
strict:可選。若是爲true,則函數在數組中搜索數據類型和值都一致的元素。默認爲false。
返回值:若是在數組中找到指定的鍵值,則返回對應的鍵名,不然返回 FALSE。若是在數組中找到鍵值超過一次,則返回第一次找到的鍵值所匹配的鍵名。
<?php $arr = array('a' => '5', 'b' => 5, 'c' => '5'); $value = array_search(5, $arr, true); // 返回鍵值數據類型和值都一致的鍵名。 var_dump($value); // string(1) "b"
array_splice() 函數從數組中移除選定的元素,並用新元素取代它。函數也將返回被移除元素的數組。
語法:array_splice(array,start,length,array)
參數:
array:必需,規定數組。
start:必需,數值。規定刪除元素的開始位置。
length:可選。數值。規定被移除的元素個數。
array:可選。規定帶有要插入原始數組中元素的數組。若是隻有一個元素,則能夠設置爲字符串,不須要設置爲數組。
返回值:返回包含被提取元素的數組。
<?php $arr1 = array('a' => 'red', 'b' => 'green', 'c' => 'blue', 'd' => 'yellow'); $arr2 = array('a' => 'purple', 'b' => 'orange'); array_splice($arr1, 0, 2, $arr2); // 把數組中的指定元素去掉並用其它值取代。 var_dump($arr1); //array(4) { [0]=> string(6) "purple" [1]=> string(6) "orange" ["c"]=> string(4) "blue" ["d"]=> string(6) "yellow" }