Maison > Article > développement back-end > Fonction de débogage debug_backtrace en PHP
debug_backtrace() est une fonction très discrète, et peu de gens y ont prêté attention. Cet article vous présente principalement l'utilisation de la fonction de débogage debug_backtrace en PHP. L'article la présente en détail à travers un exemple de code. est très utile pour tout le monde. Étudier ou travailler a une certaine valeur d'apprentissage de référence. Les amis intéressés peuvent venir étudier ensemble.
Préface
Si nous voulons savoir qui a appelé une certaine méthode, debug_backtrace peut la résoudre. debug_backtrace() peut imprimer le processus d'appel d'une page, indiquant clairement d'où il vient.
Parfois, nous voulons connaître la pile d'appels de cette fonction ou méthode, c'est-à-dire comment elle est appelée niveau par niveau. Vous pouvez utiliser la fonction debug_backtrace de PHP pour l'imprimer, comme ceci :
Exemple de code
public function update(Request $request, $id) { dd(debug_backtrace()); $getGameID = function ($request) { if (!$request->game_id) { return 1000 + intval($request->id); } return $request->game_id; }; $previews = $this->getGamePreviews($request->game_preview); $request->merge([ 'game_preview' => json_encode($previews), 'game_id' => $getGameID($request) ]); EgretGame::where('id', $id)->update($request->except(['_token', '_method'])); return redirect()->route('egretgame.index')->with('success', '编辑成功!'); }
Vous pouvez contrôler le nombre de niveaux de pile qui doivent être retracés, où debug_backtrace est un paramètre par défaut sur une constante DEBUG_BACKTRACE_PROVIDE_OBJECT
, indiquant que les informations de cet objet sont affichées. Le deuxième paramètre est utilisé pour contrôler le nombre de piles de backtrace. La valeur par défaut est all.
L'effet est comme le montre la figure, et la relation entre les niveaux d'appel est claire en un coup d'œil :
PHP documentation officielle : http:// php.net/manual/zh/function.debug-backtrace.php
Recommandations associées :
phpstorm+xdebug implémente débogage du point d'arrêt 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!