Pular para o conteúdo

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.
José Roberto jragomes
Hits: 84.763 Categoria: PHP Subcategoria: Avançado
  • Indicar
  • Impressora
  • Denunciar

Parte 3: Configurando o Eclipse PDT

O Eclipse PDT já conta com uma debug específico para PHP, mas para que ele funcione precisamos fazer algumas configurações.

Adicionando executáveis PHP



No menu Window->Preferences ache a entrada PHP Executables, lá devemos adicionar o caminho onde estão nossos executáveis. No nosso caso está em /usr/bin/php e escolhemos como debugger o Xdebug.

Configurando o Debug

É importante lembrar que devemos dizer para o debugger do Eclipse em qual porta "escutaremos" o xdebug. Esta porta deve ser a mesma daquela que indicamos no arquivo xdebug.ini. No nosso caso 9100.



Adicionando um ambiente de Debug

Agora que já temos configurado o executável do PHP, indicamos a porta do Xdebug, é hora de adicionar um servidor ao Debug do Projeto.

Clicando no menu Run, vamos até a opção "Open Debug Dialog". Lá há uma opção chamada PHP Web Page, proceda com os seguintes passos:
  • Duplo clique sobre o PHP Web Page. Isso fará que uma nova configuração seja criada, o nome padrão é "New_Configuration";
  • Modifique o Debug Server para Xdebug;
  • Indique qual arquivo será usado para o debug (ele será o ponto de partida, não necessariamente precisa ser debug. Deve ser uma página que tem links para os outros scripts ou faz chamadas para eles);
  • Diga qual URL o browser deve abrir para inicializar a sessão. MUITO IMPORTANTE: Quem deve inicializar esta sessão é o Eclipse. Não adianta abrir o browser e digitar o endereço que você quer debugar, nada vai acontecer.



Adicionando um browser ao Eclipse

O Eclipse conta com um browser interno, porém para um melhor controle, o ideal é usar um browser externo, podem ser qualquer um que esteja instalado na máquina.

Para isso basta ir em "Window->Preferences->General->Web Browser":



Próximo passo: Usar o debugger.

   1. Introdução
   2. Instalando e configurando o Xdebug
   3. Configurando o Eclipse PDT
   4. Usando o Debugger
   5. Conclusões e referências

Virtualizando com VirtualBox

Fazendo uma conexão bridge no VirtualBox

Acessando contas do Hotmail pelo Mozilla Mail

Organizando as idéias

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

Como programar com OOP em PHP, uma classe simples

Solid RELAÇÃO COM GOF

Symfony Framework - Introdução

Utilizando o Smarty template no PHP

Criando gráficos com a classe JPGraph (parte 1)

#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 ?
#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

Entre na sua conta para comentar.