Maison  >  Article  >  développement back-end  >  Introduction à l'utilisation de la fonction de débogage debug_backtrace en PHP

Introduction à l'utilisation de la fonction de débogage debug_backtrace en PHP

巴扎黑
巴扎黑original
2017-09-14 10:15:551626parcourir

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 devraient suivre l'éditeur pour apprendre 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, et il est clair d'où il vient et où il va

Parfois, nous voulons connaître la pile d'appels de cette fonction ou méthode, c'est-à-dire comment elle est appelé 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 backtracés. Le premier paramètre de debug_backtrace est par défaut une constante

, ce qui signifie afficher les informations de cet objet. le nombre de niveaux de pile à retracer. La valeur par défaut est all. DEBUG_BACKTRACE_PROVIDE_OBJECT

L'effet est comme le montre la figure, et la relation entre les niveaux d'appel est claire en un coup d'œil :

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn