PHP Handbuch
Zurück | Anhang D. Der PHP-Debugger | Nach vorne

# 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

  Name | Bedeutung
  --- | ---
  `start` | Teilt dem empfangenden Programm mit, dass hier eine Debuggermeldung beginnt. Der Inhalt von `data` ist der Typ der Fehlermeldung, der unten aufgelistet ist.
  `message` | Die 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

Debugger | PHP-intern
--- | ---
warning | E_WARNING
error | E_ERROR
parse | E_PARSE
notice | E_NOTICE
core-error | E_CORE_ERROR
core-warning | E_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

Zurück | Zum Anfang | Nach vorne
Der PHP-Debugger | Nach oben | Extending PHP