php中 array_filter,array_diff,array_column
<?php
//array_filter(arg1,arg2) arg1:必填数组,arg2可不填
//实例1:去除数组中的空元素,保留数组之前键值
$arr3 = [0,false,null,1,2,3,4,5,""," "];
$kong = array_filter($arr3);
var_dump($kong);
echo "<hr/>";
//实例2:用回调函数过滤数组中的元素
function test_odd($var)
{
return($var & 1);//位与运算 3转换为二进制 0011 与 0001 位与运算结果为0001 4转为二进制是 0100
}
$a1=array("a","b",2,3,4);
print_r(array_filter($a1,"test_odd"));
echo "<hr/>";
//array_diff 比较两个数组的键值,并返回差集
$arr1 = [1,2,3];
$arr2 = [1];
$diff = array_diff($arr1,$arr2);
print_r($diff);
echo "<hr/>";
//获取二维数组中的某一键值,组成新的数组 php版本大于 5.5
$arr4 = array(
0 => ['id'=>1,'name'=>'zhangsan1'],
1 => ['id'=>2,'name'=>'zhangsan2'],
2 => ['id'=>3,'name'=>'zhangsan3'],
3 => ['id'=>4,'name'=>'zhangsan4']
);
$new_arr = array_column($arr4,"name");
print_r($new_arr);
?>
运行结果:


浙公网安备 33010602011771号