Avatar ·

Comment obtenir la clé de la première ligne d'un tableau bidimensionnel contenant la valeur recherchée ?

Bonjour à tous ! Je suis novice en PHP et je lutte sur cette tâche depuis deux heures. J'ai un tableau bidimensionnel (un tableau de lignes avec des données utilisateurs) :

$users = [
    ['id' => 101, 'name' => 'Иван', 'role' => 'admin'],
    ['id' => 102, 'name' => 'Мария', 'role' => 'editor'],
    ['id' => 103, 'name' => 'Петр', 'role' => 'admin'],
    ['id' => 104, 'name' => 'Анна', 'role' => 'user']
];

Je dois trouver la clé de premier niveau (l'index de la ligne) de l'enregistrement où name est égal à 'Мария'. C'est-à-dire que je veux obtenir 1 (l'index de la deuxième ligne).

J'ai essayé d'utiliser array_search, mais il ne fonctionne qu'avec des tableaux unidimensionnels. J'ai tenté d'écrire une boucle, mais cela devient lourd. Existe-t-il une manière élégante de faire cela sans une multitude de boucles imbriquées ? J'ai besoin d'obtenir la clé de la première correspondance, pas toutes les correspondances.

Merci d'avance pour votre aide !

<<>>

Solution avec array_filter et array_keys