PHP array_filter函数——将数组值传递到自定义过滤函数,array_filter函数可依次将被操作数组中的每个值传递到自定义过滤函数,如果自定义过滤函数返回true,则被操作数组的当前值会被包含在返回的结果数组中,数组的键名保留不变。
PHP array_filter函数 语法
array array_filter ( array input [, callback function])
input为必选参数,输入的数组;function为可选参数,过滤条件自定义的回调函数。
PHP array_filter函数 示例
本示例应用array_filter()函数来过滤一个数组的每个值。代码如下:
<?php
function one(arr) { //定义第一个回调函数arr
return (arr % 2 == 1); //返回值为true
}
function two(arr) { //定义第二个回调函数arr
return (arr % 2 == 0); //返回值为false
}
array1 = array("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5); //声明数组array1
array2 = array(6, 7, 8, 9, 10, 11, 12); //声明数组array2
echo "第一个:<br />";
print_r(array_filter(array1, "one")); //输出被array_filter()函数过滤过为true 的值
echo "第二个:<br />";
print_r(array_filter(array2, "two")); //由于第二数组返回值为false,则输出为true 的值
?>
本示例的运行结果如下:
第一个:
Array( [a] => 1 [c] => 3 [e] => 5)
第二个:
Array( [0] => 6[2] => 8[4] => 10 [6] => 12)