array_filter — 用回调函数过滤数组中的单元
array array_filter ( array $input [, callback $callback] );
依次将 array 数组中的每个值传递到 callback 函数。如果 callback 函数返回 true,则 array 数组的当前值会被包含在返回的结果数组中。数组的键名保留不变。
遍历 input 数组中的每个值,将它们传递给 callback 函数。
序号 | 参数及说明 |
---|---|
1 | input 要遍历的数组 |
2 | callback 这个回调函数使用 |
它返回过滤后的数组。
<?php function odd($var) { return($var & 1); } function even($var) { return(!($var & 1)); } $input1 = array("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5); $input2 = array(6, 7, 8, 9, 10, 11, 12); echo "奇数值:\n"; print_r(array_filter($input1, "odd")); echo "偶数值:\n"; print_r(array_filter($input2, "even")); ?>测试看看 ‹/›
输出结果:
奇数值: Array ( [a] => 1 [c] => 3 [e] => 5 ) 偶数值: Array ( [0] => 6 [2] => 8 [4] => 10 [6] => 12 )