debug_backtrace
(PHP 4 >= 4.3.0, PHP 5, PHP 7)
debug_backtrace — Génère le contexte de débogage
Description
$options
= DEBUG_BACKTRACE_PROVIDE_OBJECT
[, int $limit
= 0
]] )debug_backtrace() génère un contexte de débogage PHP.
Liste de paramètres
-
options
-
Depuis PHP 5.3.6, ce paramètre est un masque d'options suivantes :
Options pour la fonction debug_backtrace() DEBUG_BACKTRACE_PROVIDE_OBJECT Si l'on doit ou non peupler l'index "object". DEBUG_BACKTRACE_IGNORE_ARGS Si l'on doit ou non omettre l'index "args" et donc tous les arguments de la fonction/méthode pour économiser de la mémoire. TRUE
ouFALSE
, ce qui revenait à, respectivement, définir ou non l'optionDEBUG_BACKTRACE_PROVIDE_OBJECT
. -
limit
-
Depuis 5.4.0, ce paramètre peut être utilisé pour limiter le nombre de trames dans la pile retournée. Par défaut (
limit
=0), la fonction retourne toutes les trames de la pile.
Valeurs de retour
Retourne un tableau de tableaux associatifs. Les éléments de retour possibles sont les suivants :
Nom | Type | Description |
---|---|---|
function | chaîne de caractères | Le nom de la fonction courante. Voir aussi __FUNCTION__. |
line | entier | Le numéro de la ligne courante. Voir aussi __LINE__. |
file | chaîne de caractères | Le nom du fichier courant. Voir aussi __FILE__. |
class | chaîne de caractères | Le nom de la classe courante. Voir aussi __CLASS__. |
object | objet | L'objet courant. |
type | chaîne de caractères | Le type de classe courante. Si une méthode est appelée, "->" est retourné. Si une méthode statique est appelée, "::" est retourné. Si une fonction est appelée, rien ne sera retourné. |
args | tableau | Si à l'intérieur d'une fonction, ceci liste des arguments. Si dans un fichier inclus, ceci liste des fichiers inclus. |
Historique
Version | Description |
---|---|
5.4.0 |
Le paramètre optionnel limit a été ajouté.
|
5.3.6 |
Le paramètre provide_object a été modifié en
options et d'autres options
DEBUG_BACKTRACE_IGNORE_ARGS ont été ajoutées.
|
5.2.5 |
Ajout du paramètre optionnel provide_object .
|
5.1.1 | Ajout de l'objet courant comme élément de retour possible. |
Exemples
Exemple #1 Exemple avec debug_backtrace()
<?php
// filename: /tmp/a.php
function a_test($str)
{
echo "\nHi: $str";
var_dump(debug_backtrace());
}
a_test('friend');
?>
<?php
// filename: /tmp/b.php
include_once '/tmp/a.php';
?>
Résultat de l'exécution de /tmp/b.php :
Hi: friend array(2) { [0]=> array(4) { ["file"] => string(10) "/tmp/a.php" ["line"] => int(10) ["function"] => string(6) "a_test" ["args"]=> array(1) { [0] => &string(6) "friend" } } [1]=> array(4) { ["file"] => string(10) "/tmp/b.php" ["line"] => int(2) ["args"] => array(1) { [0] => string(10) "/tmp/a.php" } ["function"] => string(12) "include_once" } }
Voir aussi
- trigger_error() - Déclenche une erreur utilisateur
- debug_print_backtrace() - Affiche la pile d'exécution PHP
Version en cache
25/11/2024 16:59:42 Cette version de la page est en cache (à la date du 25/11/2024 16:59:42) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-debug-backtrace.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.