对象数组上的array_filter

时间:2017-04-15 03:18:14

标签: php arrays foreach array-filter

我有一个对象数组。对象具有is_valid方法,该方法具有一些内部逻辑并返回布尔值。

现在我想让数组中的所有对象返回true is_valid。我可以使用foreach循环来完成。

但是有没有办法在PHP中使用array_filter而不创建新的匿名或回调函数?

3 个答案:

答案 0 :(得分:3)

如果没有匿名回调函数,你将无法实现这一点,正如世界上最好的程序员所说

所以,如果您仍然想使用array_filter,这可能是您的答案:

array_filter($array, function($entry) { return $entry->is_valid(); } );

答案 1 :(得分:2)

您可以使用这种衬板:

 Arr::filterObjects($array, 'is_valid')

来自this library

答案 2 :(得分:1)

答案是否定的? http://php.net/manual/en/function.array-filter.php

array_filter

(PHP 4> = 4.0.6,PHP 5,PHP 7) array_filter - 使用回调函数

过滤数组的元素