Terça-feira, 13 de Maio de 2008
1 Star2 Stars3 Stars4 Stars5 Stars (4 votos, média: 5 de 5)
Loading ... Loading ...

Debugar uma aplicação não é uma tarefa trivial. O PHP fornece algumas funções para esse proposito como o var_dump, print_r e debug_backtrace, mas elas estão longe de serem suficientes. Para suprir essa lacuna, a comunidade criou vários projetos uteis que podem auxiliar quem cria aplicações web.

PHP_Debug

Quem já usou o framework symfony deve conhece-lo bem. O PHP_Debug é um pacote do PEAR e permite fazer, trace, analisar logs, SQL executados, variáveis de ambiente, exceções entre outras coisas. Sua instalação e uso é simples: após ativado, uma barra no canto superior direito é criada com acesso a todas as funções.

Krumo

É um substituto do var_dump e print_r com esteróides. Sua instalação é simples, bastando fazer o include da classe class.krumo.php. Utiliza DHTML para tornar os dados mais legíveis para o desenvolvedor.

Exemplo Krumo

Alguns exemplos podem ser vistos aqui

FirePHP

Para quem usa o firefox, o firebug é ferramenta indispensável para desenvolver para internet. Imagine agora adicionar um debugger PHP a todo o poder do firebug? Foi isso que esses loucos fizeram. Seu uso é bem simples: use a função fb( mixed $Object [, string $Label ] [, string $Type ] ) na variável que você deseja depurar. A vantagem que as informações serão passadas diretamente para o firebug e o usuario comum não terá ciencia disso.

Xdebug

Umas das mais uteis ferramentas criadas para debugar PHP. Com ele você pode  fazer tracing, profiling e code coverage de funções e aplicativos, além de analisar em tempo real o valor de uma variável e debugar interatiamente com seu editor predileto.

A primeira feature que se nota, é a substituição do var_dump do PHP por uma versão mais descritiva e intuitiva.

O trace consiste em criar um log de todas as chamadas de funções e métodos feitas pelo objeto ou aplicação, os parâmetros passados, o tempo de execução,  a memoria utilizada e o retorno. Ele pode te ajudar a entender o fluxo de um programa complexo.

O Profile é parecido com o trace que permite saber com exatidão qual parte de seu código esta consumindo muitos recursos ou gerando instabilidade. A diferença esta no uso. Enquanto no trace você pode obter os dados no browser,  o profile gera um arquivo feito para ser lido em programas específicos como o WinCachegrind, KCachegrind e Webgrind . A vantagem que você obtém dados e estatísticas mais completos e fáceis de analisar.

O Xdebug pode ser integrado com muitos editores conhecidos que usam o protocolo DBGp, como é o caso eclipse PDT.


Zend Debugger

Componente que acompanha o Zend Studio e o Zend Core e outros produtos da Zend. É de uso gratuito mas não é open-source. Voce pode instalar e usar com outros editores, como o eclipse PDT. Alem de permitir debug e call tracing local, ele tambem pode executar diretamente no servidor e fazer o profiling, se o componente estiver devidamente instalado. O Zend Core já possui o Zend Debugger instalado para essa finalidade.

Mais informações:
»Instalando e usando o Xdebug com o eclipse PDT (Em portugues)
»Debugando com o Xdegug (em Ingles)
»Squash bugs in PHP applications with Zend Debugger
»Squash bugs in PHP applications with Xdebug

Veja Tambem

    None Found


  7 Respostas para “Ferramentas para debugar aplicações PHP”


> Deixe uma Resposta