E’ da un po’ che mi cimento con la programmazione PHP, ma fin’ora i debug erano solo qualche echo, seguito dal comando exit… ma quando i progetti cominciano a diventare grossi… la soluzione fin’ora adottata non è sufficiente, oltre che perdere molto tempo.
Quindi cosa fare?? Ci vengono incontro due Tool per il debug delle applicazione PHP:
XDEBUG (http://xdebug.org/)
ZEND DEBUGGER (http://www.zend.com/it/)
Vediamo come utilizzare il primo con il Tool Eclipse (nessuno vieta di utilizzare il caro vecchio vim). Ho utilizzato come sistema desktop Ubuntu 10.10, ma non dovrebbe essere molto diverso per la Windows.
Innanzitutto da Shell installiamo xdebug:
sudo apt-get install php5-xdebug
Editiamo il file di configurazione installato dalla procedura di cui sopra:
sudo vi /etc/php5/conf.d/xdebug.ini
ed aggiungiamo in fondo al file queste poche righe dopo :
xdebug.remote_enable=On xdebug.remote_host="localhost" xdebug.remote_port=9000 xdebug.remote_handler="dbgp"
Riavviamo Apache:
sudo /etc/init.d/apache2 restart
Ora procediamo alla configurazione di Eclipse:
Verificate di avere configurato il Browser dal Menù windows->preferences quindi selezionate General->Web Browser
Ora configuriamo il Debug aprendo la relativa finestra di Configurazione menù Run->Debug configurations
Valorizzate i campi come segue:
Server Debugger: Xdebugger
Php Server: Configurate per accedere al vostro sito di sviluppo (nel mio caso è in localhos)
Break at the irst line: disabilitata
Url-> Auto generate: disabilitata
Applicate le modifiche.
Ora siete pronti ad avviare il Debug, inserite un breakpoint, avviate il debug con il tasto F11, si aprirà il browser definito, navigate fino alla pagina che contiene il debug e Eclipse si attiverà sul Breakpoint…