array_find() et famille

PHP 🟢 Junior

Définition

Fonctions ajoutées en PHP 8.4 : array_find() retourne la première valeur qui satisfait un callback (null sinon), array_find_key() sa clé, array_any() et array_all() testent l'existence ou l'universalité. Elles évitent le duo array_filter + reset.

Analogie

Chercher la première chaussette rouge dans le tiroir et s'arrêter dès qu'on la trouve.

Exemple de code

$animals = ['dog', 'cat', 'cow', 'duck', 'goose'];

$first = array_find(
  $animals,
  static fn(string $v): bool => str_starts_with($v, 'c'),
); // 'cat'

$key = array_find_key($animals, fn($v) => $v === 'duck'); // 3
$any = array_any($animals, fn($v) => strlen($v) > 4);    // true
$all = array_all($animals, fn($v) => strlen($v) >= 3);   // true

Cas d'usage

Recherche du premier élément correspondant, vérifications « au moins un » / « tous » sans boucle manuelle.

Anti-pattern

Utiliser array_filter()[0] : la clé 0 n'existe pas forcément après filtrage et tout le tableau est parcouru.
#core#php84

Fiche mise à jour le 2026-09-27

← → au clavier pour passer d'une fiche à l'autre