要在嵌套关联数组中的所有数组上使用array_filter,可以使用一个递归函数。以下代码示例说明如何实现递归数组过滤:
function recursiveArrayFilter($array, $callback) { foreach ($array as $key => & $value) { if (is_array($value)) { $value = recursiveArrayFilter($value, $callback); } } return array_filter($array, $callback); }
$filteredArray = recursiveArrayFilter($nestedArray, function($value) { return $value % 2 === 0; }); // 这将筛选嵌套数组中的所有偶数值。
这将递归处理嵌套的关联数组,并在每个数组上应用array_filter。在递归函数中,我们递归地检查每个值是否是数组,如果是,则递归更新该数组。最后,我们在每个数组中使用array_filter,并返回过滤后的数组。这将使我们可以同时在嵌套关联数组中筛选所有数组。