array_filter() 函数是 PHP 中用于过滤数组中的单元的一个内置函数。它可以接受一个回调函数作为参数,该回调函数将用于过滤数组中的每个元素。它将返回一个新的数组,其中包含所有满足回调函数的条件的元素。
array_filter() 函数的语法如下所示:
array array_filter ( array $input [, callable $callback ] )
其中,input 是要过滤的数组,callback 是要使用的回调函数。callback 可以是用户定义的函数,也可以是系统内置的函数。
使用 array_filter() 函数时,可以根据自己的需要定义回调函数,以过滤数组中的元素。例如,可以使用以下回调函数来过滤数组中的偶数:
function is_even ($value) { return ($value % 2 == 0); }
可以使用以下代码来过滤数组中的偶数:
$numbers = array(1, 2, 3, 4, 5, 6, , , ); $even_numbers = array_filter($numbers, "is_even"); print_r($even_numbers);
上面的代码将输出以下结果:
Array ( [1] => 2 [3] => 4 [5] => 6 [] => )
可以看到,上面的代码将返回一个新的数组,其中包含所有满足回调函数的条件的元素。
除了可以使用自定义回调函数,array_filter() 函数还可以使用系统内置的函数,以过滤数组中的元素。例如,可以使用以下代码来过滤数组中的字符串:
$strings = array("Hello", "World", "Foo", "Bar"); $filtered_strings = array_filter($strings, "is_string"); print_r($filtered_strings);
上面的代码将输出以下结果:
Array ( [0] => Hello [1] => World [2] => Foo [3] => Bar )
可以看到,上面的代码将返回一个新的数组,其中包含所有满足回调函数的条件的元素。
总而言之,array_filter() 函数是一个非常有用的函数,可以用于过滤数组中的元素。它可以接受一个回调函数作为参数,该回调函数将用于过滤数组中的每个元素。它将返回一个新的数组,其中包含所有满足回调函数的条件的元素。