Depurar PHP en Mac OS X con Netbeans y xDebug
Depurar PHP con Netbeans es más sencillo de lo que mucha gente piensa. En esta receta se explica como conseguirlo en Mac OS X (aunque la guía es útil para cualquier sistema operativo).
PASO 1 - Instalar xDebug:
PASO 1.1 - Descargar:
No hay binarios oficiales compilados para Mac, pero se pueden conseguir en la página de Komodo: Komodo Debugger Extensions. Hay que elegir la versión de Mac OS X dentro de PHP Remote Debugging.

Una vez descargado y descomprimido, el archivo del xDebug que os interesa estará en la carpeta que tenga como nombre vuestra versión de PHP.
PASO 1.2 - Copiar a la carpeta de extensiones de PHP
El siguiente paso es copiarlo a la carpeta de extensiones de PHP. La ubicación de esa carpeta varía según la instalación, pero es fácil de saber con la función phpinfo(). Basta con buscar la fila de extension_dir.

PASO 1.3 - Actualizar php.ini
Ahora hay que configurar el xdebug en el archivo php.ini. Para ello, basta con añadir lo siguiente:
- [xdebug]
- ; ejemplo: zend_extension=/usr/lib/php/extensions/no-debug-non-zts-20090626/xdebug
- zend_extension=RUTA_HASTA_XDEBUG.SO
- xdebug.remote_enable=1
- xdebug.remote_handler=dbgp
- xdebug.remote_mode=req
- xdebug.remote_host=127.0.0.1
- xdebug.remote_port=9000
- xdebug.idekey=
PASO 2 - Reiniciar Apache
Para aplicar los cambios, hay que reiniciar el apache:
sudo /usr/sbin/apachectl restart
PASO 3 - Configurar Netbeans
Por último, hay que configurar el Netbeans para que se comunique con xDebug correctamente.
PASO 3.1 - Indicar URL del proyecto
Hacer clic derecho sobre el proyecto de Netbeans y elegir Set Configuration > Customize. En la pantalla que se abre, indicar la URL del proyecto. En mi caso:

PASO 3.2 - Indicar puerto de conexión con xDebug
Ir a la pestaña de PHP de las preferencias del Netbeans y escribir 9000 como puerto del depurador:

Ya está. El depurador funciona igual que el de cualquier otro IDE así que no hay mucho que explicar ahí. ¡Espero que os resulte útil!
Enviado por miguelSantirso hace over 2 years — modificado por última vez hace less than a minute