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
Tipo da linha. Informa o programa sobre como ele deve tratar os seguintes dados:
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. |
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