Usando XDebug para Depurar Projetos PHP
O XDebug é uma ferramenta indispensável para o desenvolvimento em PHP, pois oferece poderosos recursos de depuração com pontos de interrupção, análise de desempenho e detecção de cobertura de código. Com o XDebug, os desenvolvedores podem definir pontos de interrupção no código, verificar valores de variáveis, acompanhar a pilha de chamadas de função, analisar gargalos de desempenho e muito mais, aumentando significativamente a eficiência e a qualidade do código PHP.
Introdução ao XDebug
O XDebug é uma extensão PHP que fornece funções de depuração e análise. Ele permite que os desenvolvedores definam pontos de interrupção no código, executem o código passo a passo, verifiquem valores de variáveis e o estado do programa, ajudando-os a entender e depurar melhor o código.
Ativando o XDebug e Configurando o Ambiente de Depuração
A ServBay já vem com o XDebug integrado para cada versão do PHP.
Atenção
Por favor, consulte o artigo Como ativar o módulo XDebug da ServBay para saber como ativar o módulo XDebug
e configurar o PHPStorm
.
Exemplo Detalhado de Depuração
Estrutura do Projeto de Exemplo
Vamos supor que temos um projeto PHP simples com a seguinte estrutura de diretórios:
servbay_xdebug_app/
├── src/
│ └── Calculator.php
└── index.php
2
3
4
O conteúdo do arquivo Calculator.php
é o seguinte:
<?php
namespace App;
class Calculator
{
public function add($a, $b)
{
return $a + $b;
}
public function subtract($a, $b)
{
return $a - $b;
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
O conteúdo do arquivo index.php
é o seguinte:
<?php
require 'vendor/autoload.php';
use App\Calculator;
$calculator = new Calculator();
$sum = $calculator->add(5, 3);
$difference = $calculator->subtract(5, 3);
echo "Sum: " . $sum . "\n";
echo "Difference: " . $difference . "\n";
2
3
4
5
6
7
8
9
10
11
Configurando Pontos de Interrupção
Queremos depurar o método add
da classe Calculator
para ver como ele é executado. Abra o arquivo Calculator.php
no PHPStorm e defina um ponto de interrupção na linha return $a + $b;
.
Iniciando a Sessão de Depuração
- No PHPStorm, clique no botão
Start Listening for PHP Debug Connections
na barra de ferramentas superior (ícone de um inseto). - No navegador, acesse sua aplicação PHP, por exemplo,
https://servbay-xdebug-app.test/index.php
.
Processo de Depuração
- Quando o navegador acessar
index.php
, o XDebug se conectará automaticamente ao PHPStorm e pausará a execução no ponto de interrupção definido. - No PHPStorm, você verá que o código está pausado na linha
return $a + $b;
do métodoadd
no arquivoCalculator.php
.
Verificação dos Valores de Variáveis
- Na janela de depuração do PHPStorm, é possível ver a linha de código em execução, a pilha de chamadas, os valores das variáveis, etc.
- No painel
Variables
, você verá que os valores das variáveis$a
e$b
são5
e3
, respectivamente.
Execução Passo a Passo
- Clique no botão
Step Over
(ou pressioneF8
) para executar o código passo a passo. - Observe as mudanças nos valores das variáveis, garantindo que o método
add
retorne o resultado correto.
Continuar Execução
- Clique no botão
Resume Program
(ou pressioneF9
) para continuar a execução do código. - O programa continuará rodando até encontrar o próximo ponto de interrupção ou terminar a execução.
Verificar Resultado
- No navegador, confira o resultado da saída, que deve ser:
Sum: 8 Difference: 2
1
2
Conclusão
Com o XDebug, os desenvolvedores podem facilmente definir pontos de interrupção no código PHP, verificar valores de variáveis, executar o código passo a passo, compreendendo e depurando melhor o código. Na prática, a função de depuração com pontos de interrupção do XDebug pode ajudar os desenvolvedores a localizar e resolver problemas rapidamente, melhorando a eficiência do desenvolvimento e a qualidade do código. A partir do exemplo detalhado de depuração, podemos ver a poderosa funcionalidade e conveniência do XDebug na depuração de projetos PHP.