Aprende Java Aprende Php Aprende C++ Aprende HTML 5 Aprende JavaScript Aprende JSON Aprende MySQL Aprende SQLServer Aprende Visual Basic 6 Aprende PostgreSQL Aprende SQLite Aprende Redis Aprende Kotlin Aprende XML Aprende Linux VSC Aprende Wordpress Aprende Laravel Aprende VueJS Aprende JQuery Aprende Bootstrap Aprende Netbeans Aprende Android
Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube Sigueme en TikTok Sigueme en Whatsapp
Home / PHP / Depuración avanzada en PHP

Depuración avanzada en PHP

Por jc mouse martes, abril 9, 2019

Xdebug es una extensión para PHP que nos ayuda con la depuración y el desarrollo de aplicaciones. Contiene un depurador de un solo paso para usar con varios IDEs (Netbeans, Eclipse,PhpStorm, Intellij idea, etc.); actualiza la función var_dump () de PHP; agrega trazas de pila para avisos, advertencias, errores y excepciones; Cuenta con una funcionalidad para registrar cada llamada de función y asignación de variables al disco; contiene un perfilador; y proporciona la funcionalidad de cobertura de código para su uso con PHPUnit.

Xdebug tambien tiene una extensión para Chrome y Firefoz que te ayudará a habilitar/deshabilitar la depuración, la creación de perfiles y el rastreo todo esto muy fácilmente en lugar de hacer malabares con las variables POST/GET o las cookies.

En este post realizaremos la instalación, configuración y prueba de depuración con un IDE y Xdebug.

¿Que necesitamos?

  • XAMPP
  • Netbeans 8.x
  • Navegador web (Chrome, Firefox, etc)

Instalación y configuración de XDebug

Realiza un phpinfo() y seleccione todo el contenido de la pagina.

En su navegador abra la url https://xdebug.org/wizard.php y pegue esa información en el área de texto, presione el botón [Analyse my phpinfo() output] , se le mostrara información relevante sobre su servidor y también si Xdebug ya esta instalado o no. La parte importante, le muestra las instrucciones a seguir para instalar y configurar correctamente Xdebug. No tiene más que seguirlas.

instrucciones de instalacion

Si no es conocedor del lenguaje de Shakespeare, le ayudo con una breve explicación.

  1. Descargue el DLL correspondiente a su versión de PHP [Clic en el enlace para descargar]
  2. Mueva el archivo descargado a la carpeta X:\xampp\php\ext donde «X» corresponde a la unidad de disco donde tiene instalado XAMPP
  3. Busque el archivo php.ini y ábralo con un editor de texto, agregue la linea «zend_extension = X:\xampp\php\ext\php_xdebug[TU VERSION].dll» y guarde.
  4. Reinicie el servidor y vuelva a realizar un phpinfo() para verificar que Xdebug se instalo correctamente.

PHP Info Xdebug

Nuestro depurador y esta instalado pero debemos realizar una pequeña modificación más:

Vuelve a abrir el archivo php.ini y añade las siguientes lineas:

[xDebug]
zend_extension = D:\xampp\php\ext\php_xdebug-2.7.1-7.2-vc15.dll
xdebug.idekey = netbeans-xdebug
xdebug.remote_enable=on
xdebug.remote_host = "localhost"
xdebug.remote_port = 9000
xdebug.remote_log = "c:\xampp\tmp\xdebug.txt"

No te olvides modificar los valores con los de tu maquina. Reinicia el servidor

Configuración en Netbeans

Con Netbeans abierto dirígete al menú Herramientas -> Opciones -> Pestaña PHP -> Pestaña debugging. Comprueba que los siguientes valores estén presentes, sino, corrigelo.

Netbeans PHP propiedades

Clic en aceptar para guardar los cambios.

Probando nuestro depurador avanzado

Xdebug funciona mediante los «break point» o puntos de interrupción, para realizar la prueba del correcto funcionamiento del depurador, utilizaremos el proyecto PHP de «Código Único de Factura en PHP» que lo puedes descargar desde <<aquí>> o puedes utilizar un código PHP que tengas a mano.

La primera diferencia que notaras al usar Xdebug es que los errores se mostraran con un html ya formateado y de una forma más ordenada de la que estamos acostumbrados, es decir pasamos de esto:

Peligro depuracion

a esto:

Failed to open stream

Para terminar mostramos un video del funcionamiento de Xdebug junto con los break point y el proyecto más arriba mencionado, agregamos puntos de interrupción a varias lineas de código para verificar la correcta generación paso a paso del Código Único de Factura.

enjoy!!!

Tags

Artículos similares

Parámetros por valor y por referencia en php

En php cuando se pasan parámetros a una función, estos por defecto se los hacen por valor, es decir php crea una copia d[...]

Introducción a MariaDB con Java

Maria DB  es un sistema de gestión de bases de datos derivado de MySQL con licencia GPL, pero con un rendimiento similar[...]

Hola Mundo con Slim Framework

Slim es un micro framework para PHP que nos ayuda a escribir rápidamente aplicaciones Web y APIs sencillas pero poderosa[...]

Archivos binarios en Java (Lectura/Escritura)

Según Santa Wikipedia: «Un archivo binario es un archivo informático que contiene información de cualquier tipo codifica[...]

Como crear salas de videollamadas con Messenger Rooms de Facebook

Messenger Rooms es la nueva opción de videoconferencias de Facebook que permite realizar videollamadas con hasta 50 pers[...]

Hola Mundo con Firebase

Firebase es la plataforma para el desarrollo de aplicaciones web y aplicaciones móviles de Google el cual se centra en e[...]