Seguiremos los pasos indicados en estas guias:
- Instalar y configurar XAMPP y el IDE PHPStorm
- Instalar y configurar XDebug extensión
- Dónde descargar la extensión de XDebug
- Depurar aplicaciones web con XDebug y PHPStorm
- Marcadores para el navegador para iniciar debug desde la aplicación
Instalar y configurar XAMPP con el IDE PHP Storm
PHPStorm nos permite tener varias versiones de PHP disponibles en el entorno. Es por ello que tenemos que indicar en el proyecto que versión queremos ejecutar. Para ello, integraremos el ejecutable PHP en PHPStorm. Vamos a File – Settings y seleccionaremos la opción PHP dentro de Project Settings.
Dentro de Development enviroment, la opción Interpreter estará vacía. Le daremos al boton de los tres puntos para buscar el nuevo intérprete de PHP. Indicamos que queremos uno nuevo pulsando en el boton +. Le ponemos un nombre e indicamos en PHP Home la ruta al ejecutable. El entorno se encarga de verificar si en el directorio existe un ejecutable de PHP. En ese caso, nos indica la versión encontrada. Finalizaremos guardando los cambios.
Integración con Apache Server y PHP Storm
Para ello, iremos a la seccion Deployment dentro de Project Settings.
Una vez en la seccion Deployment, añadiremos un nuevo server pulsando en el botón + y nos aparecerá la ventana de diálogo Add Server. Seleccionaremos Local. Después de pulsar OK, podemos especificar la carpeta raiz del servidor Apache (C:\xampp\htdocs en una instalación normal) y la URL del servidor, http://localhost. Estos parámetros pueden variar en función de la configuración de la instalación de Apache.
Instalar y configurar extensión XDebug
Para instalar la extension XDebug, iremos a la página oficial y elegiremos la versión más adecuada a nuestro sistema. Básicamente hay que elegir la versión de PHP, si es para 32 o 64 bits y si queremos que sea Thread Safe o no. En el caso que tengamos una instalación de Apache como módulo (por defecto), elegiremos la versión Thread Safe.
Una vez descargado el archivo (un .dll), lo pondremos en la ruta adecuada (es posible que sea algo tipo c:\xampp\php\ext si trabajamos en Windows).
Habrá que modificar después el archivo php.ini, añadiendo al final las siguientes lineas:
[Xdebug]
zend_extension=<full_path_to_xdebug_extension>
xdebug.remote_enable=
1
xdebug.remote_host=<the host where PhpStorm is running (e.g. localhost)>
xdebug.remote_port=<the port to which Xdebug tries to connect on the host where PhpStorm is running (
default
9000
)>
Reiniciamos el servidor web y verificaremos que la instalación es correcta ejecutando php –version en el símbolo de sistema.
al intentar debuggear, xdebug me indica que el puerto 9000 esta ocupado ya intente matar el proceso pero el S.O.(windows10) es posible cambiar el puerto que ocupe, ya lo intente modificar desde php.ini pero tampoco
Lo habitual en estos casos es probar alguna de las dos opciones siguientes:
1.- Ver qué servicio existe actualmente en el sistema que usa el puerto que da conflicto. Se puede probar con netstat.exe –a –n –o (https://blogs.technet.microsoft.com/askperf/2008/08/26/what-port-is-that-service-using/)
2.- O bien cambiar la configuración del programa que trata de usar el puerto que ya está en uso, en este caso, xdebug.
Si no te funciona tocando el php.ini, asegúrate que tocas el correcto. Para ello, haz algún otro cambio y verifícalo con phpinfo.