(PHP 8 >= 8.4.0)
array_find — Возвращает первый элемент, который удовлетворяет callback-функции
Функция array_find() возвращает значение первого элемента
массива (array), для которого callback
-функция вернула true
.
Функция вернёт null
, если не найдёт ни одного элемента, который удовлетворяет условиям поиска.
array
callback
Callback-функция, которую функция вызовет для проверки элементов входного массива, со следующей сигнатурой:
Функция 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"