Debugando aplicações PHP com Xdebug e Eclipse PDT

Salve, salve galera. De novo, depois de um longo período de hibernação venho escrever um novo artigo. Desta vez o artigo é sobre PHP, mais especificamente sobre depuração (vulgo debug) de código sem a utilização de die(), print_r() e var_dump(). Pra isso vamos usar o Eclipse PDT, Xdebug e um browser.

[ Hits: 79.095 ]

Por: José Roberto em 11/04/2008 | Blog: http://www.jragomes.com


Usando o Debugger



Agora com tudo configurado podemos usar o debugger.

Inicializando o Debugger

Na barra de ferramentas do Eclipse há um botão que inicializa o Debugger, por acaso este botão tem um inseto (bug) nele.



Quando este botão for clicado uma nova janela ou abra do browser será aberta e lá você poderá navegar até o script que você quer debugar. No momento em que você chegar ao script que tem um breakpoint será aberta a visão do PHP Debug.

Ao iniciar o debug, você verá que uma nova janela ou aba (dependendo do browser) será aberta, com a URL mais ou menos assim:

http://meusite/pagina_que_indiquei_como_inicio.php? XDEBUG_SESSION_START=ECLIPSE_DBGP&KEY=12064647002702

Usando esta janela ou aba aberta você poderá navegar pelo seu sistema até chegar nos breakpoints que você indicou.

Visão geral do PHP Debug

Uma vez inicializado podemos acompanhar a execução do script, no Eclipse há uma visão específica para isso, chama-se "PHP Debug". Esta visão é composta por alguns elementos:



Durante a execução do script, nós podemos adicionar ou remover break-points. Há uma aba chamada "Breakpoints" onde estão indicados todos os breaks do nosso projeto.

Atalhos

Uma coisa muito útil é saber usar os atalhos do Eclipse PDT na visão Debug. Aqui vão os que eu considero os mais importantes:

F5 -> Step Into (entrar em alguma rotina, método, classe)
F6 -> Próximo passo
F7 -> Executa até o fim
F8 -> Continuar até acabar
F9 -> Reinicia o Debugger

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Instalando e configurando o Xdebug
   3. Configurando o Eclipse PDT
   4. Usando o Debugger
   5. Conclusões e referências
Outros artigos deste autor

Virtualizando com VirtualBox

Fazendo uma conexão bridge no VirtualBox

Baixando as fotos da sua câmera digital

Fazendo um site completo rapidinho com Joomla

Utilização e instalação do Litrix Live CD

Leitura recomendada

Inteligência Artificial com PHP e MySQL (parte I)

Trabalhando com datas em PHP

PHP >= 5.1 x horário de verão brasileiro

Criando sites para celular com WML

Compactador de URL utilizando manipulação de diretórios do Linux com PHP

  
Comentários
[1] Comentário enviado por baxman em 11/04/2008 - 16:15h

José Roberto,

que coincidência, pois ia escrever este mesmo artigo, mas ao invés de utilizar o PDT seria o notepad++.

mas valeu .. obrigado por postar o artigo

[2] Comentário enviado por erickbt86 em 12/04/2008 - 08:53h

Muito bom o artigo... prático e eficaz. Vejo que muita gente tem dificuldade em começar a utilizar o Eclipse PDT e estão artigos desse tipo em português.

t+

[3] Comentário enviado por wilbil em 03/05/2008 - 12:04h

cara vc esta de parabéns sempre estive atraz de uma solução desta para php vou instalar aqui para testar e ja comento

abraco muito obrigado

[4] Comentário enviado por felipebastosweb em 19/02/2009 - 15:38h

acabei de instalar o Eclipse PDT e estou tentando configurar os Executáveis PHP que realmente está em /usr/bin/php mas na hora de executar, sempre diz que não foi localizado.

o que fazer ?

[5] Comentário enviado por felipebastosweb em 19/02/2009 - 15:58h

opa, achei este artigo, 1/2 antigo, mas que mostrou o que tava faltando configurar
http://blog.diovani.com/2008/08/10/configurando-eclipse-pdt-xdebug/

[6] Comentário enviado por sampaioprimo em 13/03/2009 - 13:45h

opa, parabéns pelo artigo. gostaria apenas de observar que no meu ambiente (ubuntu 8.10, apache2, php5) colocar comentários dentro do arquivo de configuração do xdebug não funciona. ele passa a ignorar a linha que tem um comentário. abraços, rodrigo.

[7] Comentário enviado por xploitx em 05/11/2009 - 04:32h

Muito obrigado, nota 10 e favoritado.

[8] Comentário enviado por jonathan bispo em 01/01/2011 - 19:14h

Por favor, eu preciso de ajuda. Já fiz tudo o que foi dito, configurei tudo mas não consigo debugar minhas aplicações.

Tentei um simples:

<?php
$a = 1;
echo $a;
?>

Consigo ver o valor na tela do navegador mas meus breakpoints não funcionam. As variáveis não aparecem.

Já li pelo menos três tutoriais sobre como configurar o PDT com XDEBUG mas não consigo fazer os breakpoints funcionarem.

Agradeço a quem puder me sugerir uma solução.

Obrigado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts