lunedì 14 marzo 2011

PHP DEBUG con Eclipse (PDT)

Per chi sviluppa in PHP è semplice effettuare il DEBUG delle proprie applicazioni utilizzando Eclipse: in particolare Eclipse PHP (PDT) è l'IDE che fa per voi. Vediamo come dotarsi velocemente di un ambiente professionale per creare le vostre applicazioni in PHP utilizzando un PC che abbia come sistema operativo Windows 7:

Installiamo XAMPP

Per prima cosa ci dobbiamo dotare di un web server, dell'interprete PHP e di tutto il necessario per sviluppare applicazioni web dinamiche: a questo provvede XAMPP, che ci fa risparmiare un bel pò di lavoro. Chiaramente questa soluzione deve essere utilizzata solo per gli ambienti di sviluppo (mai in produzione).
Un problema che può sorgere in questa fase riguarda la porta utilizzata da Apache. Di default è la 80 ma ci potrebbero essere altri programmi che la utilizzano (ad esempio Skype) rendendo impossibile l'avvio del web server. Se così fosse fermiamo XAMPP e apriamo con un editor di testo il file:
[Cartella dove è stato installato XAMPP]/apache/conf/httpd.conf
Cerchiamo la proprietà Listen e mettiamo un numero di porta diverso (ad esempio 81). Ricordiamoci di sostituire il numero della porta anche sulla proprietà ServerName.

Attivare XDEBUG

Per effettuare il DEBUG delle nostre applicazioni PHP utilizzeremo la libreria Xdebug. Andate a verificare che nel seguente percorso:
[Cartella dove è stato installato XAMPP]/php/ext/
sia presente il file php_xdebug.dll. Se non trovate questa dll andate nella pagina di download di Xdebug e scegliete il link corretto a seconda della vostra versione di PHP (per saperlo visualizzate il phpinfo). Una volta completato il download mettete la dll che avete scaricato nel percorso in questione.
Adesso apriamo con un editor di testo il seguente file:
[Cartella dove è stato installato XAMPP]/php/php.ini
Per prima cosa cerchiamo la proprietà zend_extension e rimuoviamo il punto e virgola (commento). Controlliamo poi che il percorso specificato punti proprio alla dll di cui parlavo sopra. Togliamo il commento alle seguenti proprietà e impostiamole come segue:

xdebug.remote_enable=On
xdebug.remote_host="localhost"
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"

Riavviamo XAMPP e Apache e verifichiamo dal phpinfo() che Xdebug sia correttamente abilitato.

Eclipse e il DEBUG delle applicazioni in PHP

Scarichiamo la versione di Eclipse ottimizzata per PHP: PDT. Facciamo il download del file All-In-One Windows 32-bit. Dopo aver lanciato Eclipse andiamo in window -> preferences -> PHP -> PHP Executables. Facciamo add (aggiungi)

php debug eclipse pdt

Nel name mettiamo PHP, nell'executable path mettiamo il percorso del file php-cgi.exe presente dentro la cartella php che si trova nella cartella di installazione di XAMPP. Lo stesso discorso per il file php.ini. Come debugger scegliamo XDebug. Vedi sopra per un esempio.
Salviamo e andiamo infine in window -> preferences -> PHP -> Debug e impostiamo i valori come nella immagine sottostante dove andiamo a impostare il debugger e l'eseguibile PHP.

php debug eclipse

A questo punto possiamo effettuare il Debug delle nostre applicazioni PHP utilizzando eclipse.

2 commenti:

TheStylist ha detto...

Ho trovato questo articolo ben fatto, sintetico ed esaustivo (anche tempo fa dovetti attivare il debug in php e dovetti perdere le staffe per trovare una guida all'installazione chiara e semplice).
Oggi finalmente ho potuto risolvere in maniera veloce ed afficace ;)
Thanks you!

Paolo Mosca ha detto...

Grazie, sono contento che la guida ti sia risultata utile. A presto

Posta un commento