PHP debug_backtrace() 函数

实例

生成 PHP backtrace:

<?php
 function a($txt) {
     b("Glenn");
 }
 function b($txt) {
     c("Cleveland");
}
 function c($txt) {
     var_dump(debug_backtrace());
 }
 a("Peter");
 ?> 

以上代码的输出类似这样:

Array (
     [0] => Array (
         [file] => C:\webfolder\test.php
         [line] => 6
         [function] => c
         [args] => Array (
             [0] => Cleveland
         )
     )
     [1] => Array (
         [file] => C:\webfolder\test.php
         [line] => 3
         [function] => b
         [args] => Array (
             [0] => Glenn
         )
     )
     [2] => Array (
         [file] => C:\webfolder\test.php
         [line] => 11
         [function] => a
         [args] => Array (
             [0] => Peter
         )
     )
 )

定义和用法

debug_backtrace() 函数生成 backtrace(回溯跟踪)。

该函数显示由 debug_backtrace() 函数代码生成的数据。

返回一个关联数组。可能返回的元素如下:

Name Typ Beschreibung
Funktion Zeichenkette Aktueller Funktionsname
Zeile Ganzzahl Aktueller Zeilennummer
Datei Zeichenkette Aktueller Dateiname
Klasse Zeichenkette Aktueller Klassename
Objekt Objekt Aktuelles Objekt
Typ Zeichenkette

Aktueller Aufruftyp. Mögliche Aufrufe:

  • Gibt: "->" zurück - Methode aufrufen
  • Gibt: "::" zurück - statische Methode aufrufen
  • Gibt nothing zurück - Funktion aufrufen
args Array Wenn Sie in einer Funktion sind, geben Sie die Funktionsparameter an. Wenn Sie in einem zitierten Datei sind, geben Sie den Namen der zitierten Datei an.

Syntax

debug_backtrace(Optionen,Beschränkung);
Parameter Beschreibung
Optionen

Optional. Definieren Sie die Bitmaske für die folgenden Optionen:

  • DEBUG_BACKTRACE_PROVIDE_OBJECT (voller "object" Index)
  • DEBUG_BACKTRACE_IGNORE_ARGS (ignoriert "args" Index, einschließlich aller function/method Parameter, kann den Speicherbedarf reduzieren).
Beschränkung Optional. Begrenzen Sie die Anzahl der zurückgegebenen Stackframes. Standard ist (Beschränkung=0) gibt alle Stackframes zurück.

Technische Details

Rückgabewert: Keine
PHP Version: 4.3+
PHP Updateprotokoll

PHP 5.4: Hinzugefügt wurde ein optionales Argument Beschränkung.

PHP 5.3.6: Parameter provide_object geändert in Optionenund wurde das optionale Argument DEBUG_BACKTRACE_IGNORE_ARGS hinzugefügt.

PHP 5.2.5: Hinzugefügt wurde ein optionales Argument provide_object.

PHP 5.1.1: Hinzugefügt wurde der aktuelle Objekt Für mögliche zurückgegebene Elemente.