Xdebug && MAMP on Mac Os X > Mountain Lion

JeKoprogrammazione1 Comment

mamp

xdebug && MAMP for Mac OsX

Programmazione php + mysql in locale: MAMP for Mac OsX && xdebug

Dopo il passaggio a Mountain Lion, previa formattazione del nuovo disco allo stato solido (per ora solo 120 giga ma vedremo di fare un update al più presto! fatto, con un Samsung 840 Pro 512 giga si vive molto meglio!!), la classica procedura per abilitare xdebug (per chi non lo conoscesse, si tratta di un modulo che semplifica tantissimo il lavoro di debugging, colorando i codici di errore ed indentandoli in maniera facilmente leggibile: lo potete scaricare qui) sembrava non funzionare più. Se anche a voi è capitata la stessa cosa (con qualunque versione di Mac OsX dalla 10.8 o superiore – quindi Mountain Lion, Mavericks, Yosemite o El Capitan), ecco come risolvere:

Aprite un Finder (io uso Path Finder Commander One, se provenite da Windows ed usate Total Commander vi tornerà sicuramente utile) e recativi alla seguente cartella:

Applicazioni/MAMP/bin/php/php5.x.x/conf dove php5.x.x è la versione di php in uso sul vostro MAMP (la potete scoprire aprendo la schermata principale di MAMP e cliccando su “Preferenze…” -> “PHP”).

A questo punto aprite il file php.ini con il vostro editor di testo/php preferito (io uso NetBeans, Coda e Atom), cercate la stringa “[xdebug]” (probabilmente la troverete alla fine del documento) e inserite di seguito quanto segue (cancellando o commendando il codice di default):

[Xdebug]
zend_extension=”/Applications/MAMP/bin/php/php5.4.4/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so” ATTENZIONE, la stringa “no-debug-non-zts-20100525” cambia a seconda della versione di MAMP installato sulla vostra macchina!
xdebug.remote_enable=on
xdebug.remote_log=”/var/log/xdebug.log”
xdebug.remote_host=localhost
xdebug.remote_handler=dbgp
xdebug.remote_port=9000

EDIT: in realtà l’unica riga che serve per abilitare il modulo è zend_extension=”/Applications/MAMP/bin/php/php5.4.4/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so”, le altre diciture abilitano il debug remoto. Abilitandolo potrete debuggare in tranquillità dal proprio IDE preferito (Netbeans, Eclipse, ecc.) anche se il vostro progetto non è in locale. A voi la scelta se lasciarle o meno… volendo potete commentarle aggiungendo un punto e virgola ( ; ) davanti alla stringa in modo da poterle decommentare a piacere in caso decideste di passare da una metodologia di lavoro client-client ad una client-server.

A questo punto dovrete solo ristartare MAMP (terminare il server apache ed il database SQL oppure riavviare il computer) ed il gioco sarà fatto!

Ecco una comparativa tra l’output di un var_dump() prima e dopo l’abilitazione del modulo di debug:

Prima e dopo l'indentazione di xdebug

 

One Comment on “Xdebug && MAMP on Mac Os X > Mountain Lion”

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *