Debugando PHP com Xdebug
| janeiro 20th, 2009Debugar aplicações PHP nem sempre é uma fácil missão, comandos como: echo, print, var_dump, são constantes na vida do programador PHP, porém nem sempre só com eles é possível achar o erro, resumindo debugar PHP não é fácil. Pois existem uma extensão que é uma mão na roda!
Vamos dar uma olhada no Xdebug.
O que é Xdebug?
O Xdebug é uma extensão para ajudar no debuggin de scripts PHP, prove grande informações para debug. Dentre as informações providas temos:
- Erros com mensagens:
- Todos parâmetros das funções definidas
- Nome da função, nome do arquivo e a linha da ocorrência
- Link com ajuda sobre a função
- Memória alocada
- Proteção para loops infinitos
- Informações dos scripts PHP
- Análise do código
- Capacidade de debugar os scripts de maneira interativa com um cliente de debug;
Para instalar o Xdebug no Ubuntu é bem simples, temos ele no repositório:
sudo apt-get install php5-xdebug
E não esqueça de reiniciar o apache.
No windows você pode conferir aqui, como se faz a instalação.
Vamos então testar um pouco do Xdebug:
Primeiramente um simples exemplo de um retorno do clássico var_dump();
1 2 3 4 5 6 | $xdebug = new StdClass(); $xdebug->value = 1; $xdebug->test = 'test xdebug'; var_dump($xdebug); $xdebug = array('value' => 1, 'test' => array('1',2,array(3))); var_dump($xdebug); |
Rodando um teste como esse você vera que, o seu var_dump, tomou cores, e quebras de linhas, e ficou muito melhor de ver como está vindo os resultados.
Verifique no seu php.ini, a se existe essas definições:
xdebug.default_enable = On
xdebug.collect_includes = On
xdebug.collect_params = On
xdebug.collect_return = On
xdebug.collect_vars = On
xdebug.dump_globals = On
Se ainda não tiver, ou estar desabilitado, habilite.
Outras informações, relevantes:
- Quantas funções foram chamadas:
1
echo xdebug_get_function_count();
- Quanto tempo demorou a execução:
- Quanto de memória:
1
echo 'memory', xdebug_peak_memory_usage();
Por esse post é só, porém com Xdebug podemos ainda saber quais parte do código está demorando mais para serem executadas, criar trace da aplicação, assim como integrar o Xdebug com o Eclipse, e utilizar break points, inspeção de variáveis, entre outras coisas, que ajudam muito a debugar.

Debugando PHP com Xdebug | cObaia.net…
Debugar aplicações PHP nem sempre é uma fácil missão, comandos como: echo, print, var_dump, são constantes na vida do programador PHP, porém nem sempre só com eles é possível achar o erro, resumindo debugar PHP não é fácil. Descubra o Xdeb…
sasss