Normalmente, print_r() e var_dump() le funzioni sono utilizzate per controllare l'output delle variabili. L'estensione Xdebug è utilizzata in PHP per un livello avanzato di debug. Questa estensione non è installata in PHP per impostazione predefinita. Devi installarlo e impostare le configurazioni necessarie per utilizzare le sue funzionalità. In questo tutorial viene mostrato come l'estensione Xdebug può essere installata e configurata in PHP e integrata con l'editor di Visual Studio Code su Ubuntu.
Installa Xdebug per PHP
Esegui il seguente comando dal terminale per installare l'estensione Xdebug per la versione PHP 7 installata+.
$ sudo apt install php-xdebugOtterrai il seguente output se l'estensione è installata correttamente nel sistema.
Configura l'estensione Xdebug
Eseguire il comando seguente per creare il file di configurazione denominato xdebug.ini. Devi impostare correttamente il percorso della cartella disponibile per le mod in base alla versione PHP installata. Secondo il percorso utilizzato nel comando, versione PHP 7.4 è installato nel sistema attuale.
$ sudo nano /etc/php/7.4/mod-disponibili/xdebug.iniAggiungi le seguenti righe nel file per impostare le configurazioni necessarie per abilitare l'estensione Xdebug per PHP.
xdebug.remote_autostart = 1xdebug.remote_enable = 1
xdebug.remote_handler = dbgp
xdebug.host_remoto = 127.0.0.1
xdebug.log_remoto = /tmp/xdebug_remote.log
xdebug.remote_mode = req
xdebug.remote_port = 9005 #questo può essere modificato
Riavvia il server web
Esegui il seguente comando con privilegio di root per riavviare il server Apache.
$ sudo service apache2 restartVerifica dell'installazione di Xdebug
Esegui il seguente comando per verificare se Xdebug è installato correttamente o meno. Se l'estensione è installata correttamente, il seguente comando mostrerà le informazioni della versione Xdebug installata con la versione PHP.
$ php -vIl seguente output mostra che Xdebug versione 2.9.6 è installato.
Configura Xdebug in VSCode
Se l'editor di codice di Visual Studio viene aperto prima di installare l'estensione Xdebug, riaprilo. Apri il Estensioni finestra facendo clic su Visualizza menu o premendo Ctrl+Maiusc+x. genere "Debug PHP" nella casella di ricerca del Estensioni finestra. Otterrai le seguenti informazioni se l'estensione Xdebug è integrata correttamente con questo editor.
Apri il file di configurazione di Xdebug facendo clic su 'Aggiungi configurazione…' dal menu Correre e impostare la configurazione necessaria in base al xdebug.ini file.
Debug dello script PHP usando Xdebug
Crea un file PHP con il seguente script per mostrare come usare il debugger di Xdebug.
//Definisci un tipo di sito$sitetype = "Motore di ricerca";
//Definisci i tipi di sito
$sito1 = 'yahoo.com';
$sito2 = 'hi5.com';
$site3 = 'aliexpress'.com';
//Controlla il valore della variabile $sitetype
switch ($ tipo di sito)
//Definisci l'array in base alla corrispondenza e cerca il sito nell'array
caso 'Motore di ricerca':
$array = Array ('google.com','chiedi.pettinatura.com');
if(in_array($sito1,$array))
echo "$site1 è un sito di motore di ricerca.";
altro
echo "$site1 non esiste nella lista.";
rompere;
caso 'Social Network':
$array = Array ('facebook.com','twitter.com','snapchat.com');
if(in_array($sito2,$array))
echo "$site2 è un sito di social network.";
altro
echo "$site2 non esiste nella lista.";
rompere;
caso 'E-commerce':
$array = Array ('aliexpress.com','ebay.com','daraz.com');
if(in_array($sito1,$array))
echo "$site3 è un sito di e-commerce.";
altro
echo "$site3 non esiste nella lista.";
rompere;
predefinito:
echo "Sito sconosciuto.";
?>
Seleziona la riga nello script e premi F9 o clicca Attiva/disattiva punto di interruzione dal Correre menu per impostare il punto di interruzione nello script; è possibile impostare più punti di interruzione. Clicca sul Correre pulsante dal lato sinistro dell'editor per vedere i dettagli delle informazioni di debug. Nel seguente output, sono impostati due breakpoint in linea 5 e linea 13.
Ora premi F5 oppure clicca su Avvia debug De dal Correre menu per avviare il debug utilizzando Xdebug. Apparirà una barra degli strumenti, come la seguente immagine per il debug, e lo script fermerà la sua esecuzione al primo breakpoint che è in linea 5. Nella finestra di sinistra, viene mostrato quali variabili sono inizializzate e non inizializzate dopo aver eseguito lo script alla riga 5.
La prima icona della barra degli strumenti viene utilizzata per continuare lo script e per passare al punto di interruzione successivo (F5 può essere utilizzato per questo scopo). Se F5 viene premuto, dopo aver avviato il debug, andrà al prossimo punto di interruzione che è in linea 13. In questa riga verranno inizializzate alcune variabili.
La seconda icona viene utilizzata per scavalcare lo script e per andare alla riga secondo lo script (F10 può essere utilizzato per questo scopo).
La terza icona viene utilizzata per entrare nella riga del punto di interruzione (F11 può essere utilizzato per questo scopo).
La quarta icona viene utilizzata per uscire da tutte le linee dei punti di interruzione (Maiusc+F11 può essere utilizzato per questo scopo). La quinta icona viene utilizzata per riavviare il debug (Ctrl+Maiusc+F5 può essere utilizzato per questo scopo). La sesta icona viene utilizzata per interrompere il debug (Maiusc+F5 può essere utilizzato per questo scopo).
Conclusione
Xdebug è un'utile estensione di PHP utilizzata per il debug approfondito dello script. Aiuta il programmatore a trovare facilmente il motivo degli errori complicati dello script. Il modo di utilizzare questa estensione è diverso per i diversi editor. Qui è stato spiegato come installare e configurare questa estensione per PHP per l'editor di Visual Studio su Ubuntu. L'uso di questa estensione per il debug viene mostrato anche utilizzando un semplice script PHP. Questo tutorial aiuterà i lettori che vogliono imparare il livello avanzato di debug per gli script PHP usando l'estensione Xdebug e l'editor VSCode.