Détermination de la profondeur des tableaux imbriqués en PHP
Les tableaux sont une structure de données polyvalente en PHP, permettant de stocker des éléments dans d'autres tableaux. Cette fonctionnalité permet une organisation complexe des données, mais il peut être difficile de déterminer le niveau maximum d'imbrication d'un tableau dans une structure donnée.
Pour résoudre ce problème, une fonction peut être conçue pour calculer la profondeur d'un tableau, indiquant la niveau maximum de tableaux imbriqués. Si le tableau ne contient aucun tableau imbriqué, il renvoie 1 ; s'il contient un ou plusieurs tableaux imbriqués, il renvoie 2 ; et ainsi de suite.
Solution alternative pour une récursion infinie :
Une approche pour trouver la profondeur du tableau consiste à utiliser print_r() pour vérifier la récursivité infinie. Cette fonction génère une représentation sous forme de chaîne d'un tableau, et son indentation de sortie peut révéler la profondeur de la structure.
function array_depth($array) { $max_indentation = 1; $array_str = print_r($array, true); $lines = explode("\n", $array_str); foreach ($lines as $line) { $indentation = (strlen($line) - strlen(ltrim($line))) / 4; if ($indentation > $max_indentation) { $max_indentation = $indentation; } } return ceil(($max_indentation - 1) / 2) + 1; }
Cette solution fournit une détermination précise de la profondeur du tableau, évitant les pièges potentiels associés aux fonctions récursives.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!