(PHP 8 >= 8.4.0)
array_find — Возвращает первый элемент, который удовлетворяет callback-функции
Функция array_find() возвращает значение первого элемента
массива (array), для которого callback-функция вернула true.
Функция вернёт null, если не найдёт ни одного элемента, который удовлетворяет условиям поиска.
arraycallbackCallback-функция, которую функция вызовет для проверки элементов входного массива, со следующей сигнатурой:
Функция array_find() вернёт значение и не станет вызывать callback-функцию для других элементов, если функция обратного вызова вернётtrue.
Функция возвращает значение первого элемента, для которого
callback-функция вернула true. Функция вернёт null,
если не найдёт элемент, который удовлетворяет условиям поиска.
Пример #1 Пример поиска функцией array_find() первого значения, которое удовлетворяет callback-функции
<?php
$array = [
'a' => 'dog',
'b' => 'cat',
'c' => 'cow',
'd' => 'duck',
'e' => 'goose',
'f' => 'elephant'
];
// Найдём название первого животного, которое длиннее 4 символов
var_dump(array_find($array, function (string $value) {
return strlen($value) > 4;
}));
// Найдём название первого животного, которое начинается с буквы f
var_dump(array_find($array, function (string $value) {
return str_starts_with($value, 'f');
}));
// Найдём название первого животного, первая буква которого совпадает с ключом
var_dump(array_find($array, function (string $value, $key) {
return $value[0] === $key;
}));
// Найдём название первого животного, ключ которого соответствует регулярному выражению
var_dump(array_find($array, function ($value, $key) {
return preg_match('/^([a-f])$/', $key);
}));
?>Результат выполнения приведённого примера:
string(5) "goose" NULL string(3) "cow" string(3) "dog"