<?php
$array = [
'a' => 'perro',
'b' => 'vaca',
'c' => 'gato',
'd' => 'pato',
'e' => 'ganso',
'f' => 'elefante'
];
// Encontrar el primer animal cuyo nombre tiene más de 5 caracteres.
var_dump(array_find($array, function (string $value) {
return strlen($value) > 5;
}));
// Encontrar el primer animal cuyo nombre comienza con f.
var_dump(array_find($array, function (string $value) {
return str_starts_with($value, 'f');
}));
// Encontrar el primer animal cuya clave es la primera letra de su nombre.
var_dump(array_find($array, function (string $value, $key) {
return $value[0] === $key;
}));
// Encontrar el primer animal cuya clave valida una RegEx.
var_dump(array_find($array, function ($value, $key) {
return preg_match('/^([a-f])$/', $key);
}));
?>
El resultado del ejemplo sería:
string(5) "pato"
NULL
string(3) "gato"
string(3) "perro"