PHP debug con Xdebug. Parte 1
Anuncio:
Comenzamos una serie de entradas donde vamos a ver cómo configurar Xdebug y depurar PHP con Sublime Text. Vamos a usar la extensión de PHP xdebug.org.
Hay lenguajes que facilitan más que otros la tarea de depuración y PHP, no es uno de los que lo ponen más fácil. Muchas veces preferimos poner un echo o un var_dump para ver el contenido de una variable o cual es el flujo que sigue la aplicación. Pero hoy más ver una forma más elaborada de poder depurar nuestra aplicaciones en PHP.
Comenzamos instalando xdebug, lo vamos a hacer en dos partes, la primera, ésta, donde instalamos la extensión de PHP necesaria en el servidor, y la segunda donde configuraremos Sublime Text para poder depurar.
Bien, vamos a empezar por instalar la extensión xdebug en nuestro servidor. Para ello, abrimos nuestra terminal y hacemos:
sudo apt install php-xdebug
Con esto ya tenemos la extensión xdebug instalada. Ahora, si nuestro servidor web es un Apache, debemos reiniciarlo:
sudo service apache2 restart
Si tenemos nginx y tenemos instalada la extensión php-fpm, ésta, escucha en el puerto 9000 y tendríamos un problema. Xdebug también usa por defecto el puerto 9000. Podemos ver los puertos que estamos usando con el siguiente comando:
sudo netstat -anp | grep LISTEN' '
Si tenemos la extensión php-fpm instalada veremos que se muestra y se indica el puerto 9000. En este caso tenemos que cambiar el puerto por defecto de xdebug. Para ello, vamos a editar el siguiente archivo:
sudo nano /etc/phpX.X/conf.d/xdebug.ini
La ruta dependerá un poco de la versión de PHP X.X que tengas instalada. En este archivo modificamos la variable remote_port cambiandole el puerto:
xdebug.remote_port = 9001
Una vez realizado este cambio, es conveniente reiniciar php-fpm:
sudo service php-fpm restart
Con esto, ya tenemos instalada la extensión de PHP xdebug en nuestro servidor. Lo que nos queda ahora, es configurar xdebug en Sublime Text.
Espero que te haya sido de utilidad!