PHP | array_filter()函数
PHP中的这个内置函数用于使用用户定义的函数(也称为回调函数)过滤数组的元素。 array_filter()函数迭代数组中的每个值,将它们传递给用户定义的函数或回调函数。如果回调函数返回 true,则将数组的当前值返回到结果数组中,否则不返回。这样数组的键就被保留了,即原始数组和输出数组中元素的键是相同的。
句法:
array array_filter($array, $callback_function, $flag)
参数:该函数接受三个参数,其中一个是必需的,另外两个是可选的。
- $array (强制):这是指要对其执行过滤操作的输入数组。
- $callback_function (可选):指用户自定义函数。如果未提供该函数,则将删除数组中等于 FALSE 的所有条目。
- $flag (可选):指传递给回调函数的参数。
- ARRAY_FILTER_USE_KEY – 将键作为唯一参数传递给回调函数,而不是数组的值。
- ARRAY_FILTER_USE_BOTH – 将值和键作为参数传递给回调而不是值。
返回值:该函数返回一个过滤后的数组。
下面是一个程序,展示了如何使用 array_filter()函数从数组中返回或过滤掉偶数元素。
输出:
Array
(
[0] => 12
[1] => 0
[2] => 0
[3] => 18
[5] => 0
[6] => 46
)
在这个例子中,我们不会传递回调函数,让我们看看输出。我们将看到没有打印 0 或 false 元素:
输出:
Array
(
[0] => 12
[3] => 18
[4] => 27
[6] => 46
)
参考: 函数 : PHP 。 PHP