Traçage de la hiérarchie d'invocation de fonction en PHP
En PHP, il peut être utile de déterminer le nom de la fonction qui a appelé une fonction donnée . Ces informations peuvent être précieuses pour le débogage et la compréhension du flux d'exécution au sein d'une base de code complexe.
Pour réaliser cette fonctionnalité, PHP fournit la fonction debug_backtrace(). Cette fonction renvoie un tableau de cadres qui représentent la pile d'appels, chaque cadre contenant des informations sur l'appel de fonction qui a été effectué.
Obtention du nom de la fonction de l'appelant
Voici un extrait de code qui montre comment utiliser debug_backtrace() pour obtenir le nom de la fonction appelante :
$trace = debug_backtrace(); $caller = $trace[1]; echo "Called by {$caller['function']}"; if (isset($caller['class'])) echo " in {$caller['class']}";
Dans le Dans l'exemple ci-dessus, $trace capture la pile d'appels de la fonction en cours d'exécution. Le deuxième élément du tableau ($trace[1]) représente le cadre de la fonction appelante. La touche « fonction » dans le cadre fournit le nom de la fonction appelante. De plus, la clé facultative 'class' inclut le nom de la classe si l'appelant est une méthode au sein d'une classe.
En utilisant debug_backtrace(), vous pouvez suivre efficacement la hiérarchie d'appel de fonction et récupérer des informations sur la fonction appelant. Cette fonctionnalité peut s'avérer inestimable à des fins de débogage et pour mieux comprendre le flux d'exécution au sein de votre code PHP.
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!