Protokol PHP 3 debuggeru je řádkově orientovaný. Každý řádek je určitého typu a několik řádků tvoří zprávu. Každá zpráva začíná řádkem typu start a končí řádkem typu end. PHP 3 může současně posílat řádky pro různé zprávy.
Řádek má tento formát:
date time host(pid) type: message-data
date-
Datum ve formátu ISO 8601
(
yyyy-mm-dd) time- Čas včetně mikrosekund:
hh:mm:uuuuuu host- DNS (doménový) název nebo IP adresa počítače, kde byla vygenerována chyba ve skriptu.
pid-
PID (process id) na počítači
hostprocesu, který vygeneroval chybu v PHP 3 skriptu. typeTyp řádku. Říká přijímajícímu programu, jak má s následujícími daty naložit:
Tabulka F.1. Typy řádků debuggeru
Název Význam start Říká přijímajícímu programu, že tady začíná zpráva debuggeru. Obsahem datové části ( data)bude typ chybové zprávy z níže uvedeného seznamu.message Chybová zpráva PHP 3. location Název souboru a číslo řádku, kde nastala chyba. První řádek location bude vždy obsahovat nejvyšší úroveň umístění. databude obsahovatfile:line. Řádek location bude následovat za každým řádkem message a každým řádkem function.frames Počet rámců v následujícím výpisu zásobníku. Pokud jsou zde čtyři rámce, očekávejte informace o čtyřech úrovních volaných funkcí. Pokud se žádný řádek "frames" nevyskytuje, předpokládá se hloubka 0 (chyba nastala na nejvyšší úrovni). function Název funkce, kde nastala chyba. Bude se opakovat pro každou úroveň zásobníku volání funkcí. end Říká přijímajícímu programu, že tady končí zpráva debuggeru.
data- Data v řádku.
Tabulka F.2. Typy chyb rozlišované debuggerem
| Debugger | PHP 3 Internal |
|---|---|
| warning | E_WARNING |
| error | E_ERROR |
| parse | E_PARSE |
| notice | E_NOTICE |
| core-error | E_CORE_ERROR |
| core-warning | E_CORE_WARNING |
| unknown | (všechny ostatní) |
Příklad F.1. Příklad - zpráva debuggeru
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
Protokol debuggeru
