Debugger-Protokoll

Das Protokoll des Debuggers ist zeilenorientiert. Jede Zeile hat einen Typ, und mehrere Zeilen bilden eine Meldung. Jede Meldung beginnt mit der Zeile start und endet mit end. Es ist möglich, dass PHP Zeilen mehrerer Meldungen gleichzeitig ausgibt.

Eine Zeile hat folgendes Format:


date time
host(pid)
type:
message-data
     

date

Datum im ISO 8601-Format: (jjjj-mm-tt)

time

Zeit inklusive Mikrosekunden: ss:mm:uuuuuu

host

DNS-Name oder IP-Adresse des Hosts, auf dem der Fehler auftrat.

pid

PID (process id) auf dem host des Prozesses mit dem PHP-Script, das den Fehler erzeugt hat.

type

Typ der Zeile. Er zeigt dem empfangenden Programm, wie es die folgenden Daten behandeln soll:

Tabelle D-1. Typen der Debugger-Zeilen

NameBedeutung
start Teilt dem empfangenden Programm mit, dass hier eine Debuggermeldung beginnt. Der Inhalt von data ist der Typ der Fehlermeldung, der unten aufgelistet ist.
messageDie PHP-Fehlermeldung.
location Dateiname und Zeilennummer, wo der Fehler aufgetreten ist. Die erste Location-Zeile beinhaltet immer die Top-Level-Location. data enthält file:line. Nach jeder message und nach jeder function steht eine location-Zeile.
frames Anzahl der Frames in der folgenden Ebenenanzeige. Bei vier Frames werden Informationen zu vier Ebenen von Funktionsaufrufen angezeigt. Wenn keine "frames"-Zeile angezeigt wird, ist die Funktionstiefe 0 (der Fehler ist auf der höchsten Ebene aufgetreten).
function Name der Funktion, in der der Fehler aufgetreten ist. Wird jeweils für jede Funktionsebene innerhalb des Funktionsaufrufs wiederholt angezeigt.
end Teilt dem empfangenden Programm mit, dass die Meldung hier endet.

data

Daten in der jeweiligen Zeile.

Tabelle D-2. Debugger-Fehlertypen

DebuggerPHP-intern
warningE_WARNING
errorE_ERROR
parseE_PARSE
noticeE_NOTICE
core-errorE_CORE_ERROR
core-warningE_CORE_WARNING
unknown(any other)

Beispiel D-1. Beispielhafte Debuggermeldung


1998-04-05 23:27:400966 lucifer.guardian.no(20481) start: notice
1998-04-05 23:27:400966 lucifer.guardian.no(20481) message: Uninitialized variable
1998-04-05 23:27:400966 lucifer.guardian.no(20481) location: (NULL):7
1998-04-05 23:27:400966 lucifer.guardian.no(20481) frames: 1
1998-04-05 23:27:400966 lucifer.guardian.no(20481) function: display
1998-04-05 23:27:400966 lucifer.guardian.no(20481) location: /home/ssb/public_html/test.php3:10
1998-04-05 23:27:400966 lucifer.guardian.no(20481) end: notice