Como instalar o Xdebug e usá -lo no PHP no Ubuntu?

Como instalar o Xdebug e usá -lo no PHP no Ubuntu?
Quando qualquer código de programação gera uma saída inesperada, é necessário descobrir o motivo por trás do erro da saída para resolver o problema. A depuração é a melhor maneira de descobrir o motivo da saída inesperada do código, rastreando o código passo a passo.

Normalmente, print_r () e var_dump () As funções são usadas para verificar a saída das variáveis. A extensão xdebug é usada no PHP para um nível avançado de depuração. Esta extensão não está instalada no PHP por padrão. Você precisa instalá -lo e configurar as configurações necessárias para usar seus recursos. Como a extensão xdebug pode ser instalada e configurada no PHP e integrada ao editor de código do Visual Studio no Ubuntu é mostrada neste tutorial.

Instale o Xdebug para PHP

Execute o seguinte comando do terminal para instalar a extensão Xdebug para o PHP instalado versão 7+.

$ sudo apt install php-xdebug

Você obterá a seguinte saída se a extensão for instalada corretamente no sistema.

Configure a extensão XDebug

Execute o seguinte comando para criar o arquivo de configuração nomeado xdebug.ini. Você deve definir o caminho da pasta Mods-Alawable adequadamente com base na versão php instalada. De acordo com o caminho usado no comando, o PHP versão 7.4 está instalado no sistema atual.

$ sudo nano/etc/php/7.4/mods-disponível/xdebug.ini

Adicione as seguintes linhas no arquivo para definir as configurações necessárias para ativar a extensão Xdebug para PHP.

xdebug.remote_autostart = 1
xdebug.remote_enable = 1
xdebug.remote_handler = dbgp
xdebug.remote_host = 127.0.0.1
xdebug.remote_log = /tmp /xdebug_remote.registro
xdebug.remote_mode = req
xdebug.remote_port = 9005 #isso pode ser modificado

Reinicie o servidor da web

Execute o seguinte comando com privilégio de root para reiniciar o servidor Apache.

$ sudo serviço apache2 reiniciar

Verificando a instalação do Xdebug

Execute o seguinte comando para verificar se o Xdebug está instalado corretamente ou não. Se a extensão for instalada corretamente, o comando a seguir mostrará as informações da versão Xdebug instalada com a versão PHP.

$ php -v

A saída a seguir mostra que o Xdebug versão 2.9.6 está instalado.

Configurar Xdebug no vscode

Se o editor de código do Visual Studio for aberto antes de instalar a extensão Xdebug, reabrir. Abra o Extensões janela clicando no Visualizar menu ou pressionando Ctrl+Shift+X. Tipo “Debug Php” na caixa de pesquisa do Extensões janela. Você receberá as seguintes informações se a extensão Xdebug for integrada corretamente com este editor.

Abra o arquivo de configuração do Xdebug clicando 'Adicione configuração…' Do menu Correr e defina a configuração necessária de acordo com o xdebug.ini arquivo.

Depuração do script PHP usando Xdebug

Crie um arquivo PHP com o seguinte script para mostrar a maneira de usar o Xdebug Debugger.

// Defina um tipo de site
$ sitetype = "mecanismo de pesquisa";
// Defina os tipos de site
$ site1 = 'yahoo.com ';
$ site2 = 'hi5.com ';
$ site3 = 'Aliexpress.com ';
// Verifique o valor da variável $ sitEType
Switch ($ sitetype)

// Defina a matriz com base no site de partida e pesquisa na matriz
Caso 'Motor de Pesquisa':
$ ARAY = Array ('Google.com ',' pergunte.com ',' Bing.com ');
if (in_array ($ site1, $ aray))
eco "$ site1 é um site de mecanismo de pesquisa.";
outro
eco "$ site1 não existe na lista.";
quebrar;
Caso 'Rede Social':
$ array = Array ('Facebook.com ',' Twitter.com ',' Snapchat.com ');
if (in_array ($ site2, $ aray))
eco "$ site2 é um site de rede social.";
outro
eco "$ site2 não existe na lista.";
quebrar;
caso 'e-commerce':
$ ARRAY = Array ('Aliexpress.com ',' ebay.com ',' Daraz.com ');
if (in_array ($ site1, $ aray))
eco "$ site3 é um site de comércio eletrônico.";
outro
eco "$ site3 não existe na lista.";
quebrar;
padrão:
eco "site desconhecido.";

?>

Selecione a linha no script e pressione F9 ou clique Alternar o ponto de interrupção de Correr menu para definir o ponto de interrupção no script; Vários pontos de interrupção podem ser definidos. Clique no Correr Botão do lado esquerdo do editor para ver os detalhes das informações de depuração. Na saída a seguir, dois pontos de interrupção são ambientados na linha 5 e linha 13.

Agora, pressione F5 ou clique em Comece a depurar de Correr menu para iniciar a depuração usando o xdebug. Uma barra de ferramentas aparecerá, como a imagem a seguir para a depuração, e o script interromperá sua execução no primeiro ponto de interrupção que está na linha 5. Na janela esquerda, quais variáveis ​​são inicializadas e não são inicializadas após a execução do script na linha 5 é mostrada.

O primeiro ícone da barra de ferramentas é usado para continuar o script e ir para o próximo ponto de interrupção (F5 pode ser usado para esse fim). Se F5 é pressionado, depois de iniciar a depuração, ele irá para o próximo ponto de interrupção que está na fila 13. Nesta linha, algumas variáveis ​​serão inicializadas.

O segundo ícone é usado para passar o script e ir à linha de acordo com o script (F10 pode ser usado para esse fim).

O terceiro ícone é usado para entrar na linha do ponto de interrupção (F11 pode ser usado para esse fim).

O quarto ícone é usado para sair de todas as linhas do ponto de interrupção (Shift+F11 pode ser usado para esse fim). O quinto ícone é usado para reiniciar a depuração (Ctrl+Shift+F5 pode ser usado para esse fim). O sexto ícone é usado para interromper a depuração (Shift+F5 pode ser usado para esse fim).

Conclusão

Xdebug é uma extensão útil do PHP usada para depurar profundamente o script. Ajuda o codificador a encontrar o motivo dos erros complicados do script facilmente. A maneira de usar esta extensão é diferente para os diferentes editores. Como essa extensão para PHP pode ser instalada e configurada para o editor do Visual Studio no Ubuntu foi explicada aqui. O uso desta extensão para depuração também é mostrado usando um script PHP simples. Este tutorial ajudará os leitores que desejam aprender o nível avançado de depuração para o script PHP usando a Extensão Xdebug e o Editor de Vscode.