Debugeando código PHP

imageUna de las “limitantes” de trabajar con PHP es el no poder hacer un debug a nuestro código como en C, C++, Java, VS, C# en fin entre otros muchos otros lenguajes. ya que al finalizar de leer este post podrás establecer breakpoints, y conocer el valor de las variables en determinado momento de la ejecución de nuestro script o aplicación.

 

Requisitos

Pasos

Si tienes instalado algún otro servidor de apache te recomiendo que pares el proceso , la ventaja de wamServer es que por default no inicia ningún servicio por lo que antes de arrancar Apache debemos comprobar que el ya instalado este detenido (en mi caso tengo appServ).

image

Una vez que iniciemos WamServer, nos creara un icono junto al reloj.

image

Habilitamos las liberáis de Xdebuger de php (Es importante seleccionarlas antes de iniciar el servidor), es probable que al momento de darle clic a las opciones no nos muestre la palomita si no hasta que se inicie apache.

image

image

Una ves echo esto ahora si iniciamos nuestro servidor apache.

image

 

Si en la configuración de nuestro PHP aparece la librería Xdebuger Sonrisa indica que todo esta listo para el debuger.

image

image

 

En netBeans creamos un nuevo proyecto de php

image

Es importamte guardar nuestro proyecto en nuestra carpeta del servidor (En mi caso C:\www) para wam la ruta es C:\wamp\www.

image

image

Y Finalizamos.

image

Antes de iniciar nuestro debug debemos de habilitar algunas ventanas como:

  • Variables: Conocer el valor de nuestra variables en tiempo de ejecución
  • Breakpoints: Conocer los puntos establecidos donde queremos que se detenga nuestra aplicación.

image

Guardamos he iniciamos nuestro debug

Probamos un for sencillo.

Observar que he puesto dos breakPoints (línea 7 y 9).

image

Como vemos en este ciclo la variable $i vale 3.

image

 

Función de los botones parar debugear:

image

  • imageDetiene el debug
  • imageNos lleva hasta el próximo breakpoint
  • imageEntra a un función o ciclo, en nuestro caso entraría al for (Claro si no tuvieramos breakpoint en la linea 9).
  • imagePasa a la siguiente línea de código, si es una función simplemente la ejecuta sin entrar, en nuestro caso ejecuta un siclo del for cada vez que se presiona.
  • image Si nos encontramos en for o función nos lleva a la línea desde el cual fue llamado (Si es que aplicamos la opción image)

 

Si algo sale mal, NetBeans nos mostrara una ventana como la siguiente.

image

 

¿Por que WampServer?

WamServer ya incorpora por default la libreria xDebuger a diferencia de AppServ, aun que también podemos agregar la librería y configurarla y nos debería de funcionar (Post pendiente).

¿Por que NetBeans?

NetBeans no es el único IDE con el que podemos hacer un debug, pero lo elegí por:

  • Es fácil de usar el debug (no hay que configurar nada).
  • En mi trabajo me paso todo el día con sprint tool suit (hijo de eclipse) así que ya no quería verlo mas jeje.

Pero se puede obtener lo mismo con Eclipse para php, Zend studio, y algunos otros.

y bueno esta elección tuvo que ver con La importancia de trabajar con un IDE.

 

Espero que es haya servido saludosSonrisa.

Leave a Reply

Your email address will not be published. Required fields are marked *