Forum und email

Protocolo do Debugger

O protocolo do debugador do PHP 3 é baseado em linhas. Cada linha tem um tipo, e várias linhas compõem uma mensagem. Cada mensagem começa com uma linha do tipo start e termina com uma linha do tipo end. O PHP 3 pode enviar linhas de diferentes mensagens simultaneamente.

Uma linha tem este formato:

date time host(pid) type: message-data

date
Data no formato ISO 8601 (yyyy-mm-dd)
time
Hora, incluindo microsegundos: hh:mm:uuuuuu
host
Nome DNS ou IP da maquina onde o erro do script foi gerado.
pid
ID do processo na máquina do processo com o PHP 3 que gerou este erro de script.
type

Tipo da linha. Informa o programa sobre como ele deve tratar os seguintes dados:

Tipos de Linhas de Debug
Nome Significado
start Informa ao programa que a mensagem começa aqui. O conteúdo de data será o tipo de erro da mensagem, como listado abaixo.
message A mensagem de erro do PHP 3.
location Arquivo e número da linha onde ocorreu o erro. A primeira linha location sempre conterá o nível superior. data conterá: arquivo:linha. Sempre existirá uma linha location após uma message e após cada function.
frames Número de janelas (frames) na saida atual. Se houver quatro níveis, será esperado informação sobre quatro níveis de funções chamadas. Se não for dada nenhuma linha de janela (frame) assume que o valor é 0 (o erro aconteceu no início).
function Nome da função onde o erro ocorreu. Será repetida para cada vez que a função for chamada dentro da pilha.
end Informa ao programa que a mensagem de debug termina aqui.

dados
Linha de dados.
Tipos de erros de debug
Debugador Interno do PHP 3
warning (alerta, atenção) E_WARNING
error (erro) E_ERROR
parse (interpretação) E_PARSE
notice (notificação) E_NOTICE
core-error (erro grave) E_CORE_ERROR
core-warning (aviso grave) E_CORE_WARNING
unknown (desconhecido) (qualquer outro)

Example#1 Exemplo de uma mensagem de Debug

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