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

Envío de correo HTML con php

PHP cuenta con la función mail que nos permite el envío de correo desde nuestro servidor web bool mail ( string $to , st[...]

Código Único de Factura en PHP

Código Único de Factura para el Nuevo Sistema de Facturación Electrónica en Bolivia desarrollado en el lenguaje PHP 7 (H[...]

Extraer texto e imagen, exportar como PNG y encriptar un archivo PDF

En este post hablaremos sobre la biblioteca de Apache PDFBox el cual es una herramienta para java de código abierto que[...]

Bolivia Segura: La página web oficial del gobierno para informar sobre el Coronavirus

El gobierno constitucional de Bolivia a la cabeza de la presidente Yaninne Añez y ante la confirmación de dos casos posi[...]

Evaluar expresiones matemáticas en Java con JavaScript

Java 8 trae consigo una nueva versión del motor de JavaScript llamada Nashorn, este motor introduce mejoras de rendimien[...]

Capturar foto desde una webcam con Java Media Framework

Como se vio en un post anterior (Capturar video de una webcam con JMF) la captura de un video desde una webcam utilizand[...]