По сути, я хочу иметь возможность получить функциональность c ++ find_if () , Detect SmallTalk: и т. Д.:
// would return the element or null
check_in_array($myArray, function($element) { return $elemnt->foo() > 10; });
< /code>
Но я не знаю ни одной функции PHP, которая делает это. Одно "приближение" Я придумал: < /p>
$check = array_filter($myArray, function($element) { ... });
if ($check)
//...
< /code>
Недостатком этого является то, что цель кода не сразу ясна. Кроме того, он не остановится итерации над массивом, даже если элемент был найден, хотя это скорее придирки (если набор данных достаточно велик, чтобы вызвать проблемы, линейный поиск в любом случае не будет ответом)
Подробнее здесь: https://stackoverflow.com/questions/142 ... d-function