Ir al contenido principal

Depurar aplicaciones PHP con Xdebug y netbeans

Introducción

Cuando desarrollamos aplicaciones en PHP, en ocasiones nos encontramos en el dilema de que nuestro código no hace lo que esperamos, es en esos momentos queremos saber el contenido de las variables y el flujo de ejecución nuestro código, una solución típica y limitada es utilizar las funciones var_dump, print_r y echo,  pero ¿qué pasa si queremos hacer un seguimiento más avanzado al flujo de ejecución de nuestro código? ,  pues allí es donde entra Xdebug.

¿Qué es depurar o debugging?

Según Wikipedia: “es el proceso de identificar y corregir errores de programación. En inglés se le conoce como debugging, es que se asemeja a la eliminación de bichos (bugs), manera en que se conoce informalmente a los errores de programación” https://es.wikipedia.org/wiki/Depuraci%C3%B3n_de_programas

¿Qué es Xdebug?

Es una extensión de PHP para hacer debug con herramientas de depuración tradicionales, desde el editor (en este caso desde Netbeans), tal como se hace en lenguajes de programación clásicos.
Tienes disponible información sobre todas las variables creadas en un momento dado de la ejecución de tu aplicación y puedes ver su contenido de manera expandida. Te ofrece también la posibilidad de marcar puntos de ruptura de tu código, donde el flujo del programa se detendrá para que puedas ver el estado de tus variables, o la traza de ejecución. Si lo deseas puedes ser tan minucioso como acompañar la ejecución del programa línea a línea.

Instalar Xdebug

Nos dirigimos a  http://xdebug.org/wizard.php  esta página analiza el contenido de nuestro phpinfo, es decir la configuración de nuestro PHP, y nos dirá que versión de Xdebug nos conviene descargar y como instalarlo.

Abrimos la página que contiene nuestro phpinfo, seleccionamos todo el contenido, lo copiamos y lo pegamos en la página wizard de xdebug.







Abrimos el archivo de configuración de PHP, en mi caso “C:\wamp\bin\apache\apache2.4.9\bin\php.ini”, en este archivos buscamos “xdebug” y si no existe agregamos la configuración al final del archivo.

zend_extension = "C:\wamp\bin\php\php5.5.12\ext\php_xdebug-2.4.0rc1-5.5-vc11-x86_64.dll"
;
[xdebug]
xdebug.remote_enable = on
xdebug.profiler_enable = off
xdebug.profiler_enable_trigger = off
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.profiler_output_dir = "c:/wamp/tmp"
xdebug.show_local_vars=0

Instalar NetBeans Connector

NetBeans Connector es un complemento para el navegador google chrome, proporciona profunda integración entre el IDE NetBeans y el navegador Google Chrome, cuenta  con un conjunto completo de herramientas de desarrollo para JavaScript y HTML5, incluyendo la edición de código, depuración, el estilo directo, el desarrollo con iOS y dispositivos Android, y más.
Para instalarlo abre tu navegador Google Chrome  y visita la siguiente url
https://chrome.google.com/webstore/detail/netbeans-connector/hafdlehgocfcodbgjnpecfajgkeejnaa




Una vez instalado, cambiamos las opciones de navegador de netbeans.


Depurando nuestro proyecto PHP.



Y taran funciona, ya podemos depurar nuestros proyectos en PHP.




Espero que te haya sido útil.

Comentarios

Publicar un comentario

Entradas más populares de este blog

Acceder a wamp/xampp desde otro pc

En ocasiones queremos que nuestros proyectos web que están en un servidor web local ( http://localhost/ ), sean accedidos desde otras computadoras de la red a través de la IP del servidor web local. Pero esto no es posible debido a que algunas soluciones que integran apacahe - php - mysql - otros en un solo paquete (Wampserver, xampp) solo habilitan el acceso de manera local. La solución está en editar (cambiar directivas) el archivo de configuración del apache, en este caso trabajare con Wamp. Cambiando directivas en Directory Abrir el archivo de configuración de apache, en mi caso: C:\wamp\bin\apache\apache2.4.9\conf\httpd.conf Y buscar: <Directory />  AllowOverride none  Require all denied </Directory> Y modificar a esto: <Directory /> AllowOverride none #Require all denied Order allow,deny Allow from all </Directory> Cambiando directivas en el documentRoot En el mismo archivo buscar: <Directory "c:/wamp/...

Instalar varias versiones de Mozilla Firefox en Windows

A veces tenemos la necesidad de probar nuestras aplicaciones web en diferentes navegadores y en sus diferentes versiones, en el caso de Firefox no se puede tener varias versiones instaladas al mismo tiempo, por más que se hagas instalaciones personalizadas eligiendo otra carpeta de destino. Una posible solución es instalar las versiones portables, funciona pero no he quedado conforme, la otra solución es la que detallo continuación. Crearemos un perfil de ejecución para cada versión de Firefox, y haremos instalaciones personalizadas para cada versión. Creando un nuevo perfil Presionamos tecla Windows + R (ventana ejecutar) y escribir: firefox –profilemanager Se abrirá la siguiente ventana, en tu caso solo aparecerá “default” a mi aparece varios porque tengo todas esas ya instaladas. Creamos un nuevo perfil (crear perfil) Poner el nombre de perfil, yo le pongo ff3 porque será firefox 3.0. Ahora ya tengo el perfil ff3 agregado, luego salir ...

Modelo de datos para una encuesta

Modelo de datos para encuesta, la aplicación lo hice con codeigniter, espero subirlo pronto.