1. array_column(array,column_key[,index_key]);**
返回輸入數(shù)組中某個(gè)單一列的值。
$arr = array(
array(
'id' => 5698,
'name' => 'Gates',
),
array(
'id' => 4767,
'name' => 'Jobs',
)
);
$names = array_column($arr, 'last_name');
print_r(names);
/*
Array
(
[0] => Gates
[1] => Jobs
)
*/
$names = array_column($arr, 'last_name', 'id');
print_r(names);
/*
Array
(
[5698] => Gates
[4767] => Jobs
[3809] => Zuckerberg
)
*/
2. array_combine(keys,values);**
通過合并兩個(gè)數(shù)組來創(chuàng)建一個(gè)新數(shù)組,其中的一個(gè)數(shù)組元素為鍵名,另一個(gè)數(shù)組元素為鍵值
注意:兩個(gè)參數(shù)必須有相同數(shù)目的元素
$fname = array('Bill', 'Steve', 'Mark');
$age = array('60', '56', '31');
$arr = array_combine($fname, $age);
print_r($arr);
/*
Array
(
[Bill] => 60
[Steve] => 56
[Mark] => 31
)
*/
3. array_merge(array1,array2,array3...)**
函數(shù)把一個(gè)或多個(gè)數(shù)組合并為一個(gè)數(shù)組。
提示:我這里就不做相同健值是否覆蓋的區(qū)分了,太難記了
$a1 = array('red', 'green');
$a2 = array('blue', 'yellow');
print_r(array_merge($a1, $a2));
/*
Array
(
[0] => red
[1] => green
[2] => blue
[3] => yellow
)
*/
4. array_diff(array1,array2,array3...);**
差集,返回第一個(gè)數(shù)組中與其他數(shù)組元素都不相同的元素(根據(jù)value值來判斷,不根據(jù)key值),元素的健值保留
$a1 = array('a' => 'red', 'b' => 'green', 'c' => 'blue', 'd' => 'yellow');
$a2 = array('e' => 'red', 'f' => 'green', 'g' => 'blue');
$result = array_diff($a1, $a2);
print_r($result);
/*
Array
(
[d] => yellow
)
*/
5. array_intersect(array1,array2,array3...);**
交集,返回第一個(gè)數(shù)組中與其他數(shù)組元素都相同的元素(根據(jù)value值來判斷,不根據(jù)key值),元素的健值保留
$a1 = array('a' => 'red', 'b' => 'green', 'c' => 'blue', 'd' => 'yellow');
$a2 = array('e' => 'red', 'f' => 'green');
$a3 = array('c' => 'red', 'g' => 'blue');
$result = array_intersect($a1, $a2, $a3);
print_r($result);
/*
Array
(
[a] => red
)
*/
6. array_keys(array,value,strict),array_key_exists(key,array)**
前者獲取數(shù)組的所有key值,組成一個(gè)新的數(shù)組
后者判斷某值是否在數(shù)組中的key值中
7. array_values(array),in_array(search,array,type)**
前者獲取數(shù)組的所有value值,組成一個(gè)新的數(shù)組
后者判斷某值是否在數(shù)組中value值中,如果第三個(gè)參數(shù)設(shè)置為TRUE,則還要比較類型是否相等
8. is_array
判斷是否是數(shù)組,is_object判斷是否是對(duì)象
9. array_map
10. array_pop(array),array_push(array, value1, value2...)**
前者是出棧,刪除最后一個(gè)元素,返回刪除的那個(gè)value值
后者是入棧,添加到最后一個(gè)元素后面,返回新數(shù)組元素的個(gè)數(shù)
11. array_reverse(array, preserve) **
數(shù)組元素反轉(zhuǎn),如果第二個(gè)參數(shù)為TRUE,則保留原來的健值
12. array_slice(array, start, length, preserve)**
取出數(shù)組的部分?jǐn)?shù)據(jù),第二個(gè)參數(shù)可以為負(fù)數(shù),第四個(gè)參數(shù)為TRUE是保留健值
13. array_sum(array)**
返回?cái)?shù)組所有值之和
如果所有值都是整數(shù),則返回一個(gè)整數(shù)值。如果其中有一個(gè)或多個(gè)值是浮點(diǎn)數(shù),則返回浮點(diǎn)數(shù)。
14. array_unique(array)**
- 移除數(shù)組中的重復(fù)的值,并返回結(jié)果數(shù)組,
- 根據(jù)value值判斷,不管key
- 保留第一個(gè)元素,舍棄其他相同的元素
$a = array('a' => 'red', 'b' => 'green', 'c' => 'red');
print_r(array_unique($a));
/*
Array
(
[a] => red
[b] => green
)
*/
15. array_unshift(array,value1,value2,value3...)**
在數(shù)組的開始插入元素,返回新數(shù)組元素的個(gè)數(shù)
參數(shù)中的元素將作為一個(gè)整體插入,在數(shù)組中的順序和在參數(shù)中的順序一樣
$a = array('a' => 'red', 'b' => 'green');
array_unshift($a, 'blue', 'black');
print_r($a);
/*
Array
(
[0] => blue
[1] => black
[a] => red
[b] => green
)
*/
16. count,sizeof
$a = array(1, 3, 5);
echo count($a); //3
echo count(null); //0
echo count(false); //1
echo count(0); //1
echo count('abc'); //1
17. end
18. list
$my_array = array('Dog', 'Cat', 'Horse');
list($a, $b, $c) = $my_array;
echo $a; //Dog
echo $b; //Cat
echo $c; //Horse
19. sort,rsort,ksort,krsort
sort 根據(jù)元素的value值按照字母升序
rsort 根據(jù)元素的value值按照字母降序
ksort 根據(jù)元素的key值按照字母升序
rksort 根據(jù)元素的key值按照字母降序