Come installare Xdebug e usarlo in PHP su Ubuntu?

Come installare Xdebug e usarlo in PHP su Ubuntu?
Quando un codice di programmazione genera un output imprevisto, è necessario scoprire il motivo dietro l'errore dell'output per risolvere il problema. Il debug è il modo migliore per scoprire il motivo dell'output imprevisto del codice tracciando il codice passo dopo passo.

Normalmente, print_r () E var_dump () Le funzioni vengono utilizzate per verificare l'output delle variabili. L'estensione XDEBUG viene utilizzata in PHP per un livello avanzato di debug. Questa estensione non è installata in PHP per impostazione predefinita. È necessario installarlo e impostare le configurazioni necessarie per utilizzare le sue funzionalità. In che modo l'estensione XDEBUG può essere installata e configurata in PHP e integrata con l'editor di codice Visual Studio su Ubuntu è mostrato in questo tutorial.

Installa xdebug per PHP

Esegui il seguente comando dal terminale per installare l'estensione XDEBUG per la versione PHP installata 7+.

$ sudo apt install php-xdebug

Otterrai la seguente uscita se l'estensione è installata correttamente nel sistema.

Configurare l'estensione XDEBUG

Esegui il comando seguente per creare il file di configurazione denominato Xdebug.ini. È necessario impostare correttamente il percorso della cartella disponibile MODS in base alla versione PHP installata. Secondo il percorso utilizzato nel comando, PHP versione 7.4 è installato nel sistema corrente.

$ sudo nano/etc/php/7.4/mods-disponibile/xdebug.ini

Aggiungi le seguenti righe nel file per impostare le configurazioni necessarie per abilitare l'estensione XDEBUG per 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.tronco d'albero
Xdebug.remote_mode = req
Xdebug.remote_port = 9005 #Questo può essere modificato

Riavvia il server web

Esegui il comando seguente con il privilegio di root per riavviare il server Apache.

$ sudo servizio apache2 riavvio

Verificare l'installazione di Xdebug

Esegui il comando seguente per verificare se Xdebug è installato correttamente o no. Se l'estensione è installata correttamente, il seguente comando mostrerà le informazioni della versione XDEBUG installata con versione PHP.

$ php -v

Il seguente output mostra che xdebug versione 2.9.6 è installato.

Configura XDEBUG in VSCode

Se l'editor di codice Visual Studio viene aperto prima di installare l'estensione XDEBUG, quindi riaprirlo. Apri il Estensioni finestra facendo clic su Visualizzazione menu o premendo Ctrl+shift+x. Tipo "PHP Debug" 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 "Aggiungi configurazione ..." Dal menu Correre e impostare la configurazione necessaria secondo il Xdebug.ini file.

Debug di script PHP usando xdebug

Crea un file PHP con il seguente script per mostrare il modo di utilizzare XDEBUG DEBUGGER.

// Definisci un tipo di sito
$ SiteType = "Engine di ricerca";
// Definisci i tipi di sito
$ site1 = 'yahoo.com ';
$ site2 = 'hi5.com ';
$ site3 = 'Aliexpress.com ';
// Controlla il valore della variabile $ SiteType
Switch ($ SiteType)

// Definisci l'array in base al sito di corrispondenza e di ricerca nell'array
Caso "motore di ricerca":
$ Array = Array ('Google.com '', chiedi.pettinatura.com ');
if (in_array ($ site1, $ array))
echo "$ site1 è un sito del motore di ricerca.";
altro
echo "$ site1 non esiste nell'elenco.";
rottura;
Caso "social network":
$ Array = Array ('Facebook.com ',' Twitter.com ',' Snapchat.com ');
if (in_array ($ site2, $ array))
echo "$ site2 è un sito di social network.";
altro
echo "$ site2 non esiste nell'elenco.";
rottura;
Caso "e-commerce":
$ array = array ('AliexPress.com ',' ebay.com ',' Daraz.com ');
if (in_array ($ site1, $ array))
echo "$ site3 è un sito di e-commerce.";
altro
echo "$ site3 non esiste nell'elenco.";
rottura;
predefinito:
Echo "Sito sconosciuto.";

?>

Seleziona la riga nello script e premi F9 o fare clic Attiva il 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, due punti di interruzione sono impostati in linea 5 e linea 13.

Ora, premere F5 o fare clic su Inizia a debug 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 punto di interruzione che è in linea 5. Nella finestra a sinistra, le variabili vengono inizializzate e non inizializzate dopo l'esecuzione dello script alla riga 5.

La prima icona della barra degli strumenti viene utilizzata per continuare lo script e per andare al punto di interruzione successivo (F5 può essere usato per questo scopo). Se F5 viene premuto, dopo aver avviato il debug, andrà al prossimo punto di interruzione che è in linea 13. A questa riga, alcune variabili saranno inizializzate.

La seconda icona viene utilizzata per salire sullo script e per andare alla riga secondo lo script (F10 può essere usato per questo scopo).

La terza icona viene utilizzata per entrare nella riga di breakpoint (F11 può essere usato per questo scopo).

La quarta icona viene utilizzata per uscire da tutte le linee di breakpoint (Shift+F11 può essere usato per questo scopo). La quinta icona viene utilizzata per riavviare il debug (Ctrl+shift+f5 può essere usato per questo scopo). La sesta icona viene utilizzata per fermare il debug (Shift+F5 può essere usato per questo scopo).

Conclusione

Xdebug è un'utile estensione di PHP utilizzata per il debug dello script profondamente. Aiuta il programmatore a trovare facilmente il motivo degli errori complicati dello script. Il modo di utilizzare questa estensione è diverso per i diversi redattori. È stata spiegata come questa estensione per PHP è installata e configurata per l'editor Visual Studio su Ubuntu. L'uso di questa estensione per il debug viene anche mostrato utilizzando un semplice script PHP. Questo tutorial aiuterà i lettori che vogliono imparare il livello avanzato di debug per lo script PHP usando XDEBUG Extension e VScode Editor.