Programar un lenguaje con un IDE, es una de las opciones más deseadas por cualquier programador que puede haber usado tanto compiladores Borland o bien los de Microsoft, en LinuxParty, te enseñamos a usar el plugin de Eclipse PHPEclipse, con la herramienta Eclipse, que es una verdadera delicia.
REQUISITOS.
Debemos tener instalado los paquetes que se muestran a continuación, dependiendo de tu distribución se pueden llamar de distinta forma, pero hay herramientas gráficas, tanto en Ubuntu, como en Fedora, que te pueden ayudar a hacerlo, por ejemplo kyum (Fedora, y distribuciones basadas en RedHat, como SuSE, CentOS, Mandrake, etc...)

Crear Un Proyecto.
El primer
paso es crear el proyecto. Para ello, haga clic en el menú
Archivo, mueva el ratón sobre 'Nuevo' y seleccione 'Otros
...'.
Figura 1. Creación de un Proyecto
Creando un Proyecto.
Cuando aparece la ventana seleccionar "File", en el menú desplegable "New" y en el nuevo menú despegable "Proyect" creará un proyecto de PHP.
Figura 2.
Asistente (wizard) sobre la Selección del proyecto PHP de la lista de
selección

Cuando aparece la ventana de Nuevo Proyecto PHP, selecciona un
nombre para su proyecto. Si su trabajo no está dentro de su
webroot, se recomienda crear su proyecto en un directorio. Para ello,
desmarque 'Usar ubicación predeterminada' y escriba una vía
alternativa en su lugar. Cuando haya introducido un nombre del
proyecto y un camino, haga clic en el "Finalizar" para
continuar.
Figura 3. Nueva ventana del proyecto de PHP
Entonces New PHP Proyect creará un proyecto vacío de PHP para
usted. Su trabajo debería tener un proyecto PHP, de forma
similar a la siguiente figura.
Figura 4. De trabajo con el
Nuevo Proyecto PHP
El Proyecto PHP ha sido creado y ahora puede empezar a añadir
los archivos y código fuente para su proyecto.
Nota:
El icono azul en la esquina superior derecha - indica que usted
está ahora en la perspectiva de PHP. Una perspectiva de
Eclipse es un entorno personalizado que se orienta hacia una tarea
determinada. Hay ciertas cosas que son útiles para tener
visibles al mismo tiempo la codificación en PHP, por ejemplo,
y otras cosas que podrían ser útiles tener visibles
cuando la codificación sea en Java, y aún otros que son útiles
durante la depuración. La perspectiva de PHP es la perspectiva
que se utiliza para escribir código PHP.
Añadir un archivo a la Fuente del Proyecto
Ahora
que hemos creado el proyecto, tenemos que añadir algún
simple código. Vamos a empezar por añadir un archivo
PHP. Para ello, selecciona Archivo-Nuevo PHP-Archivo. El 'Nuevo
archivo PHP aparecerá la ventana. Esta ventana le permite
seleccionar el nombre del archivo y el contenedor. El contenedor es
el directorio donde desea crear el archivo, y el nombre del archivo
es, así, el nombre del archivo, con la extensión php.
Figura 5. Ventana del nuevo archivo PHP.
Una vez que haya entrado el nombre del
directorio y el nombre del archivo, haga clic en Finalizar para
completar el proceso. El editor de PHP publicará un nuevo
archivo vacío que se abrirá para su edición.
Conclusion
Creación
de un simple script
Para empezar, abra un archivo PHP
existente en un proyecto existente. Para este tutorial, vamos a estar
utilizando el proyecto creado en el tutorial 'Creación de un
proyecto con PHPEclipse' pero se puede utilizar cualquier proyecto de
PHP que le gustara.
Para empezar, vamos a crear un simple
script que tiene algunas variables y una estructura de control. Esto
nos dará algo interesante para ver en el depurador.
Empezaremos con el siguiente código:
$output = '';
for ($i=0;$i<10;$i++) {
$output .= 'Loop'.$i.' ';
echo $output;
}
Este programa es muy simple, pero que nos permitirá ver las
variables y las instrucciones paso a paso a través de un
programa.
Configuración del Depurador
Antes de empezar la depuración, tenemos que configurar
algunas opciones para que PHPEclipse y XDebug sepan dónde
encontrar diversos componentes.
Especificar el camino del
intérprete de PHP.
Para empezar, debemos especificar
la ruta del intérprete de PHP. Esto puede variar dependiendo
de su sistema. Para los sistemas basados en Windows, se trata de una
ruta a un archivo llamado php.exe. Para los sistemas Linux, se trata
de una ruta a un archivo llamado simplemente php. Para sistemas
Linux, está a menudo en /usr/bin/php. Para especificar
la ruta del intérprete de PHP, seleccione “Preferencias”
de la ventana de menú desplegable. Abrir hasta el PHPEclipse,
seleccione y haga clic en XDebug. En el panel de configuración
derecho que aparece, introduzca su puerto de depuración y el
camino a su intérprete de PHP. El puerto por defecto para
depurar con XDebug es el 9000, pero su sistema de configuración
puede ser diferente. Para verificar que es 9000 el puerto correcto,
cree un fichero con la función phpinfo(), acceda a la página
y compruebe el valor de xdebug.remote_port. El valor de
xdebug.remote_port debe coincidir con el valor del puerto de
depuración.

Figura 1. XDebug panel de configuración
Cuando haya introducido los valores adecuados, haga clic en el
botón Aceptar.
Creación de la configuración de depuración
Ahora que ya hemos configurado XDebug, tenemos que crear una
configuración de depuración. Esto indicará la
forma en que Eclipse iniciará la depuración para su
proyecto. Para hacer esto, seleccione "Abrir Diálogo de
depuración" del menú desplegable “Run”. Se le
presentará una lista de temas que puede depurar. Haga doble
clic en la entrada titulada "Script PHP XDebug”. Esto creará
una nueva configuración y le permitirá especificar las
opciones necesarias. Puede indicar un nombre para la configuración
de la depuración y, a continuación, debe especificar el
nombre del archivo que debe ser ejecutado para propósitos de
depuración. En este caso, es el nombre del archivo
“index.php”.
Figura 2. Depurar la ventana de
configuración

Cuando haya seleccionado el archivo
correspondiente, haga clic en el botón Debug para iniciar la
depuración. Después de que el programa haya terminado,
usted debería ver la ventana de la consola en la parte
inferior de la pantalla. Éste le indicará el estado de
su script (terminado en este caso), y la salida por debajo de la
misma (loop0 loop0 Loop1 loop0 Loop1 Loop2 loop0 Loop1 Loop2 Loop3
loop0 Loop1). Habrá creado con éxito una configuración
de depuración y estamos dispuestos a utilizar la herramientas
de depuración para analizar sus scripts.

Añadir un Breakpoint
Basta
con que aplique ejecutar nuestro script y ver, que la salida no es
demasiado útil - podemos hacerlo desde la línea de
comandos, o a través del navegador web. El verdadero poder en
la depuración proviene de la habilidad de fijar puntos de interrupción y paso a paso a través de scripts. Un
breakpoint es - un punto en su secuencia de comandos en el que
le gustaría romper su continuidad -. ¿Qué va a
pasar con el intérprete de PHP? seguirá con normalidad
hasta que llega a la línea especifica en su programa. Cuando
se llega a esa línea, se detendrá y esperarrá
sus instrucciones sobre la forma de proceder.
Para establecer
un corte (breakpoint), mueva el ratón sobre la barra gris en
el extremo izquierdo del margen. Haga clic derecho al lado de la
línea en la que desea romper, y seleccione la opción
'Toggle Breakpoint ". Asegúrese de seleccionar "Toggle
Breakpoint 'y no' Toggle Breakpoint PHP '- este último no
funcionará. Después de alternar la ruptura, una bola
azul aparecerá en el margen gris al lado de la línea
que has especificado.
Figura 3. Breakpoint Debug

Una vez que haya añadido su Breakpoint, seleccione Debug
History-myFirstProject (o cualquier nombre que dio a su
configuración) del menú Ejecutar.
Ahora, para
ver nuestra información de depuración, tenemos que
cambiar a nuestras perspectivas de depuración. Para ello,
selecciona la ventana de menú desplegable y seleccione Abrir
perspectivas de depuración.
Hay una serie de cosas que
usted notará en la perspectiva de depuración. La parte
superior izquierda tiene una lista de scripts que se encuentran
actualmente en ejecución. Hay botón en este panel que
puede controlar la ejecución del script. El primer botón
en el diagrama es el botón Reanudar. Al hacer clic en este
botón hará que la ejecución de su script se
reanude hasta que llegue a la próxima ruptura. El segundo
botón que está marcado es el botón Terminar.
Este botón hará que la ejecución de su script
concluya. Los tercer y cuarto botones son los botones Step y Step
Into. Estas medidas causan una ejecución línea a línea
de su script. La diferencia entre ambas es que el paso en el botón
ampliará la información cualquiera de las funciones
llamadas desde cada línea, y el paso sobre el botón
tratará las llamadas a funciones como una línea. Por lo
tanto, si usted no está preocupado por las funciones que están
llamados a una determinada línea, usted debe usar más
Step. Si quieres ver exactamente lo que las funciones están
haciendo, usted debe usar Step Into.
A la derecha del panel
de depuración verá un panel con una pestaña
Variables y una ficha de interrupción. En la pestaña de
variables, verá una lista de variables que están en el
ámbito actual. Nuestro script utiliza dos variables - $i y
$output.. Usted notará que una serie de variables de entorno
también figuran en la lista. Junto con la lista de variables,
se puede ver los valores de dichas variables. Esto es útil si
desea realizar un seguimiento de lo que ocurre a una variable en el
transcurso de la ejecución de su script. Al hacer clic en la
pestaña de interrupción le permitirá ver una
lista de interrupción que se han establecido para su script.
Desde esta pestaña, puede a su vez controlar una ruptura y
los fuera de control desmarcando las casillas que están junto
a ellas. También hay botones para eliminar los breakpoints
seleccionados y eliminar a todos los de interrupción de su
script.
Debajo, usted verá un editor que contiene el
archivo fuente actual que está siendo ejecutado. Una flecha
azul sigue en general la ejecución de su script. En el fondo
es una ventana que muestra la consola donde se puede ver la salida de
su script.
Figura 4. La perspectiva de depuración:

Ver como se
ejecuta nuesro script.
Ahora que estamos familiarizados con la
perspectiva de depuración, podemos rastrear la ejecución
de nuestro programa y controlar las variables. Haremos un clic por
clic a través de unas líneas de nuestro programa. Para
rastrear a través de la ejecución del bucle, haga clic
en el botón 'Step Into'

-
En nuestro estado inicial, verá
que la flecha azul apunta a la primera línea de nuestro
script. Esta línea inicializa la variable $output. Dado que
la línea no se ha ejecutado todavía, verá los
dos $i y $output sin inicializar.
-
Después de un clic del
botón Step Into, la flecha azul se mueve a la primera línea
de nuestro bucle for. Una vez más, esta línea no ha
sido ejecutada, por lo que $i es que no se ha iniciado todavía,
pero la salida de dólares ya se ha inicializado''.
-
Después de dos clics más,
estamos en nuestro bucle for. Las variables ventana nos dice que $i
es 0 y $output es todavía sin inicializar''.
Después de hacer clic, a
$output se le ha asignado el valor 'loop0 ».
-
Después de hacer clic en
otro, $i se incrementa y ahora tiene el valor 1. La consola muestra
la salida 'loop0”, que es el resultado de la eco declaración.
La flecha azul ha vuelto a la línea superior del bucle for,
listo para otra iteración.
Al continuar de esta
manera, podemos ver los valores de cada variable como la ejecución
de nuestro script avanza y podemos controlar la salida después
de cada línea del guión ..
Conclusión
Ahora está más familiarizado con los procesos básicos de depuración sobre un script en local, utilizando la herramienta de depuración de PHPEclipse, XDebug.
Depurando un Proyecto sobre un servidor Web
Server Utilizando PHPEclipse y XDebug
Contenidos
Este tutorial supone que usted ya ha
completado el tutorial de depuración local. Por lo tanto,
usted ya ha creado un proyecto y han creado un simple script que
puede ser examinado durante la depuración y que una ruptura
que ya se ha insertado. También se da por supuesto que usted
tiene un servidor web funcional que tiene el módulo XDebug
instalado.
Configurando el depurador
Antes de empezar la depuración,
tenemos que configurar algunas opciones para que PHPEclipse y XDebug sepan dónde encontrar diversos componentes.
Especificar
el camino del intérprete de PHP.
Para empezar, debemos
especificar la ruta del intérprete de PHP. Esto puede variar
dependiendo de su sistema. Para los sistemas basados en Windows, se
trata de una ruta a un archivo llamado php.exe. Para los sistemas
Linux, se trata de una ruta a un archivo llamado simplemente php.
Para sistemas Linux, está a menudo en /usr/bin/php.
Para especificar la ruta del intérprete de PHP, seleccione
“Preferencias” de la ventana de menú desplegable. Abrir
hasta el PHPEclipse, seleccione y haga clic en XDebug. En el panel de
configuración derecho que aparece, introduzca su puerto de
depuración y el camino a su intérprete de PHP. El
puerto por defecto para depurar con XDebug es el 9000, pero su
sistema de configuración puede ser diferente. Para verificar
que es 9000 el puerto correcto, cree un fichero con la función
phpinfo(), acceda a la página y compruebe el valor de
xdebug.remote_port. El valor de xdebug.remote_port debe coincidir con
el valor del puerto de depuración.
Cuando haya introducido los valores adecuados, haga clic en el
botón Aceptar.
Creación de la configuración
de depuración
Ahora que ya hemos configurado XDebug,
tenemos que crear una configuración de depuración. Esto
le indicará la forma en que Eclipse iniciará el
depurador para su proyecto. Para hacer esto, seleccione "brir
Diálogo de depuración" del menú desplegable
“Run”. Se le presentará una lista de temas que puede
depurar. Haga doble clic en la entrada titulada "Remote
XDebug PHP script”. Esto creará una nueva configuración
y le permitirá especificar las opciones necesarias. Puede
indicar un nombre para la configuración de depuración
y, a continuación, debe especificar la identificación
de cadenas Ide. Puede seleccionar lo que desee para esta cadena.
Se recomienda que la mantenga una corta y memorable (que pueda
recordar). Asegúrese de que usted recuerde este valor para más
tarde. En nuestro ejemplo, usaremos la cadena “firstproject.”
Figura 2. Depurar la ventana de configuración.

Una vez que
haya seleccionado un nombre de configuración y ha optado por una cadena de identificación, haga clic en la pestaña Pathmap. En la pestaña pathmap, especifique cómo traducirá Eclipse la ruta local para los nombres de ruta remota nombres. Para asignar una ruta, haga clic en el botón Nuevo para crear un nuevo mapa. Si su servidor web está situado en el mismo sistema que Eclipse está funcionando, estas rutas de acceso deberán ser iguales. En cualquier caso, en virtud de ruta local introducirá el camino hacia la raíz de su proyecto en la máquina que Eclipse se está ejecutando. En una ruta remota, escriba la ruta a la raíz de su proyecto en la máquina del servidor Web se está ejecutando.
Figura 3. Especificación del Mapa de Ruta
local a la máquina remota

Una vez que haya especificado el
correcto pathmap, pulse el botón Debug para iniciar el
depurador.
Usted notará que a diferencia cuando se
depura en local, La depuración remota no se inicia
automáticamente con su script. Simplemente comienza la
depuración y comienza la escucha de conexiones en el puerto de
depuración. Para empezar nuestro script, abra en un navegador
web, y haga lo siguiente
Figura 4. Ejecutora nuestro script
en el navegador web
Esto no es realmente empezar a depurar
su script. No hay ninguna relación en este momento entre su
script y el depurador de Eclipse. Tenemos que decirle de alguna
manera a PHP que busque el depurador de Eclipse, y ejecute las
instrucciones para su procesamiento. Para hacer esto, tenemos que
añadir una variable a la cadena de solicitud. Esta variable se
llama XDEBUG_SESSION_START y su valor debe coincidir con la
protección e Ide String que hemos indicado antes. En este
caso, nuestra nueva URL será:
http://127.0.0.1/myFirstProject/index.php?XDEBUG_SESSION_START=firstproject.
Una vez que ha añadido la
variable de la URL, presione enter para iniciar la depuración.
Ahora ya puede reanudar el proceso de depuración
como se ha demostrado en la depuración local de este tutorial.
El proceso es el mismo, excepto que en lugar de la salida que se
muestra en la consola se muestra en el navegador que ha cargado su
script.
Conclusion
Ya está listo para empezar a depurar scripts remotos PHP usando PHPEclise y XDebug.
Como recomendación, os invito a instalar el pluggin xdebug para Firefox. os recordará que tenéis que hacer cambios en el fichero /etc/php.ini (en Linux, o su correspendiente en windows php.ini) con la siguiente configuración (cambiar a gusto):
Os recomiendo crear el script:
<?
phpinfo();
?>
Con el objeto de que comprobar que comprobeis que xdebug.auto_trace está On, tanto el local como en master.

Si hay un fichero configuración xdebug.ini, generalmente en /etc/php.d/:
; Enable xdebug extension module
zend_extension=/usr/lib/php/modules/xdebug.so
; zend_extension_ts=php_xdebug.dll
xdebug.remote_enable=1 xdebug.auto_trace=1
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.idekey=default
Si no existe dicho fichero, editar el fichero /etc/php.ini e insertarlo.
Habrá que reiniciar los servicios web:
# /etc/init.d/httpd restart
|