array_find
(PHP 8 >= 8.4.0)
Returns the first element satisfying a callback function
Description
array_find() returns the value of the first element of an Array for which the given callback returns true. If no matching element is found the function returns null.
Parameters
arrayThe Array that should be searched.
callbackThe callback function to call to check each element, which must be of the following signature:
callback(mixed $value, mixed $key): boolIf this function returns true, the value is returned from
array_find()and the callback will not be called for further elements.
Return Values
The function returns the value of the first element for which the callback returns true. If no matching element is found the function returns null.
Examples
array_find() example
<?php
$array = [
'a' => 'dog',
'b' => 'cat',
'c' => 'cow',
'd' => 'duck',
'e' => 'goose',
'f' => 'elephant'
];
// Find the first animal with a name longer than 4 characters.
var_dump(array_find($array, function (string $value) {
return strlen($value) > 4;
}));
// Find the first animal whose name begins with f.
var_dump(array_find($array, function (string $value) {
return str_starts_with($value, 'f');
}));
// Find the first animal where the array key is the first symbol of the animal.
var_dump(array_find($array, function (string $value, $key) {
return $value[0] === $key;
}));
// Find the first animal where the array key matching a RegEx.
var_dump(array_find($array, function ($value, $key) {
return preg_match('/^([a-f])$/', $key);
}));
?>The above example will output:
string(5) "goose"
NULL
string(3) "cow"
string(3) "dog"