Fonction récursive array_key_exists() en php

Une fonction récursive est une procédure qui s’appelle elle-même. En réduisant le problème à des instances plus petites du même objet, on résout le problème global. Ainsi, pour monter un escalier de 5 marches, il suffit de monter un escalier de 4 marches, puis de monter une marche. Puis pour monter un escalier de 4 marches, il suffit de monter un escalier de 3 marches, puis de monter une marche, etc …

Fonction récursive d'existence de clés de tableau
Fonction récursive d’existence de clés de tableau

L’objectif ici est de définir une fonction récursive pour tester l’existence d’une clé dans un tableau pouvant contenir des tableaux et ainsi de suite. Par exemple, dans le tableau suivant :

la clé 'a'  comme la clé 'e'  ou la clé 'q'  doivent être détectées.

Pour cela, on écrit une fonction array_key_exists_r()  qui va tester l’existence de la clé sur le premier niveau du tableau grâce à la fonction array_key_exists()  et l’on bouclera sur les valeurs de ce tableau si celles-ci sont elles-mêmes des tableaux en appelant la fonction récursive array_key_exists_r() .

La fonction retourne true si la clé $key est trouvée dans le tableau $array, sinon false.

Et hop, voici mis en évidence la puissance de la récursivité sur un test d’existence de clés de tableaux à niveaux multiples.

Soumettre un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *