Debuggare PHP con NetBeans e Xdebug su MAMP

Visto che la scorsa sera ho perso un po’ di tempo per configurare correttamente Xdebug, NetBeans e MAMP per debuggare PHP, spero che questo possa semplificarvi la vita in futuro. (Oppure complicarla a me per via dei commenti che riceverò😛 )

Non sarò qui a farvi delle guide partendo dall’inizio, da cos’è PHP e perchè vorremmo debuggarlo.

Configurare MAMP, Xdebug e NetBeans su OS X: http://netbeans.org/kb/docs/php/configure-php-environment-mac-os.html (nota: non è obbligatorio cambiare i numeri delle porte come han fatto nella guida, potete tranquillamente tenere 8888 e 8889 come preferisco fare io)

Guida di NetBeans.org per configurare Xdebug: http://wiki.netbeans.org/HowToConfigureXDebug (attenzione: questa guida assume che partiate da zero a compilare Xdebug, mentre MAMP ha già il modulo precompilato e va solo attivato).

Sito ufficiale di Xdebug: http://xdebug.org/download.php

Con tutte queste guide, cosa c’è da aggiungere?

1) Potrebbe essere necessario impostare php.ini in modo che mostri gli errori. (Xdebug li formatterà in modo più leggibile nell’output html)

display_errors =On

2) Questo è il mio php.ini (/Applications/MAMP/conf/php5/php.ini). Alcune righe di xdebug sono commentate perchè nel mio caso funziona così e preferisco non toccarlo🙂

[xdebug]
zend_extension="/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so"
xdebug.default_enable=1xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_host=localhost
xdebug.remote_port=9000
;xdebug.idekey=netbeans-xdebug
;xdebug.remote_autostart=on

;rimosso zend per xdebug
[Zend]
;zend_optimizer.optimization_level=15
;zend_extension_manager.optimizer=/Applications/MAMP/bin/php5/zend/lib/Optimizer-3.3.3
;zend_optimizer.version=3.3.3
;zend_extension=/Applications/MAMP/bin/php5/zend/lib/ZendExtensionManager.so

3) Il mio php.ini ha impostato di loggare tutti gli errori (occhio alle dimensioni del logfile però!)

error_reporting  =  E_ALL

4) Se avete dovuto per qualche motivo (come me) installare il modulo Loader di IonCube, ricordatevi di metterlo come PRIMA riga del php.ini

[PHP]zend_extension=/Applications/MAMP/bin/php5/zend/lib/ioncube_loader_dar_5.2.so

 

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger cliccano Mi Piace per questo: