PHP常用数组函数(含按键值删除二维数组中的元素)

// 1.array_search():在数组中搜索键值"red",并返回它的键名
$a=array("a"=>"red","b"=>"green","c"=>"blue");
echo array_search("red",$a);// a

// 2.array_splice():从数组中移除元素,并用新元素取代它:
$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2=array("a"=>"purple","b"=>"orange");
array_splice($a1,0,2,$a2);
print_r($a1);// Array ( [0] => purple [1] => orange [c] => blue [d] => yellow )

// 组合起来,删除数组中某个键值(支持删除二维数组中的数组元素)
$arr=[[1],[2],[3]];
$key = array_search([2], $arr);// 1
array_splice($arr, $key, 1);// array("0"=>[1],"1"=>[3])
3.unset():释放给定的变量,保持索引(并未改变数组的原有索引)

4.array_diff():比较两个数组的值,并返回差集(不支持删除二维数组中的数组元素),保持索引
$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_diff_key():比较两个数组的键名,并返回差集,保持索引
$a1=array("a"=>"red","b"=>"green","c"=>"blue");
$a2=array("a"=>"red","c"=>"blue","d"=>"pink");

$result=array_diff_key($a1,$a2);
print_r($result);// Array ( [b] => green )

6.array_values():返回数组中所有的值(不保留键名),用于重排索引(让索引从0开始,并且连续)
$a=array("Name"=>"Peter","Age"=>"41","Country"=>"USA");
print_r(array_values($a));// Array ( [0] => Peter [1] => 41 [2] => USA )

7.array_merge():把两个数组合并为一个数组,传一个数组时,与array_values()效果相同
$a1=array("a"=>"red","b"=>"green");
$a2=array("c"=>"blue","b"=>"yellow");
print_r(array_merge($a1,$a2));// Array ( [a] => red [b] => yellow [c] => blue )

8.array_reverse():将原数组倒序

9.array_rand():获取数组中随机元素,返回键名

10.array_unique():去除重复值

11.array_intersect():比较两个数组的键值,并返回交集

12.array_fill(index,number,value):用给定的键值填充数组
index:必需。规定返回数组的起始索引。
number:必需。规定填充的元素的数量,其值必须大于 0。
value:	必需。规定用于填充数组的键值。

13.array_diff(): 返回差集(第一个数组中有,其他数组中没有的键值)

14.array_diff_assoc:返回差集(这个与array_diff区别是会比较键)

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章