Depurar código PHP con Firebug y FirePHP

Balu3 Diciembre 2010 - 1:46pm 2 comentarios
Enviar por Email Imprimir

Depurar código PHP con Firebug y FirePHPSi eres de los que utiliza Firebug cada vez que trabajas un proyecto web, para depurar HTML/CSS/JavaScript/Ajax ¿Sabías que también podrías utilizarlo para depurar o debuggear PHP? Pues si es posible, gracias a una extensión adicional de Firefox llamada FirePHP.

Gracias a la combinación de ambas extensión, en la parte superior de Firebug y el uso de una nueva librería del lado del servidor, los scripts PHP serán capaces de enviar información de depuración al navegador y serán codificados en las cabeceras de respuesta HTTP (HTTP Headers).

Una vez que tengamos todo instalado y configurado , podremos enviar advertencias y/o errores de nuestros scripts PHP a la consola de Firebug, como si estuviéramos desarrollando con JavaScript. Veamos como instalarlo y usarlo...

Pasos para instalar FirePHP

Para empezar, primero necesitamos instalar la extensión FirePHP de Mozilla Firefox. Esto requerirá que hayamos instalado previamente Firebug. Una vez que FirePHP este operativo, la próxima vez que abramos el panel de Firebug, observaremos un bicho azul adicional. Damos clic sobre él y aparecerá un menú que nos permitirá activar o desactivar FirePHP.

Pasos para instalar FirePHP

Esto, por supuesto, no hará nada. También deberemos que instalar la librería FirePHP del lado del servidor, que esta disponible desde este enlace. Esta en una versión independiente de la librería que podemos descargar e instalar manualmente con PEAR.

Después de esto, sólo tendremos que incluir la librería en el código. También hay versiones diseñadas para integrarse con distintos frameworks o CMS, tales como WP-FirePHP, el plugin para Wordpress o JFirePHP, el plugin para Joomla.

Una vez que tengamos la librería FirePHP en nuestro servidor, hay que incluirla en nuestro script con una línea require:

<?php
require_once('FirePHPCore/fb.php');
?>

Debido a que FirePHP envía los datos de registro a través de la cabecera HTTP, tendremos que almacenar nuestro script en el buffer, a fin de que las cabeceras de respuesta sean incluidas en el contenido generado posteriormente. En PHP, esto se hace con la función ob_start, antes del script a almacenar:

<?php
ob_start
();
?>

¿Cómo usar FirePHP?

Una vez realizados los pasos anteriores, podemos empezar a utilizar FirePHP. Todo lo que necesitamos es llamar a la función fb() dándole como parámetro aquello que deseemos poner en log; por ejemplo, podemos añadir etiquetas opcionales y/o definir un mensaje de registro, como un registro estándar, una advertencia, un error, o un mensaje de información. Así tenemos:

<?php
$var
= array('a'=>'pizza', 'b'=>'cookies', 'c'=>'celery');
fb($var);
fb($var, "An array");
fb($var, FirePHP::WARN);
fb($var, FirePHP::INFO);
fb($var, 'An array with an Error type', FirePHP::ERROR);
?>

Este código producirá la siguiente salida en la consola de Firebug:

Salida FirePHP

También podemos utilizar FirePHP para realizar un seguimiento a la ejecución de una aplicación, pasando la constante TRACE. Con esto, podremos ver el número de línea, el nombre de la clase y el nombre de la función o método dentro del cual la función fb() fue llamada. Así sería el código:

<?php
function hello() {
 
fb('Hello World!', FirePHP::TRACE);
}
function
greet() {
 
hello();
}
greet();
?>

Y esto es lo que nos mostraría la salida:

Salida FirePHP con TRACE

Esta funcionalidad de ruteo puede ser magnífica para depurar scripts más complejos, ya que nos permite saber exactamente de donde son llamadas las funciones.

Obviamente, aunque no esta demás decirlo, hay que acordarnos de eliminar las declaraciones de debugging antes de enviar el código a producción.

FirePHP es mucho más complejo de lo que hemos visto en este artículo, pero creo que hemos dado un vistazo rápido a sus principales características y cómo llevarlo a la práctica; existe una API orientada a objetos disponible con una serie de funcionalidades adicionales. Podemos aprender más sobre ellas en el sitio de FirePHP, no olviden probarlo.

Recomendado: FireQuery: Firebug optimizado para jQuery

Vía | sitepoint

Comentarios

Imagen de JoséQ

Hola, qué tal, felicidades por el blog, me gusta mucho.

Soy José, uno de los encargados de MasqueunReloj.com, una nueva tienda online. Debido a que queremos promocionar nuestra entrada en la red estamos regalando relojes a bloggers como tú a cambio de un enlace.

Aquí podrás ver más características y qué tipo de relojes regalamos: www.masqueunreloj.com/content/7-relojgratis

Si te interesa, en el link que he puesto hay un enlace hacia un formulario donde rellenándolo te enviaré los datos del enlace que debes de poner y cómo hacer para que te envíe el reloj GRATUITAMENTE.

Te dejo un email de contacto por si tienes cualquier duda, y si necesitas contactarnos de otro modo (messenger, skype o teléfono) solo tienes que pedírmelo mandándome un email y te facilito los datos. El correo es consultas@masqueunreloj.com

Un saludo y espero noticias tuyas!

Imagen de Jose Tapia

Tutoriales

Cómo descargar videos de VK.com
En este artículo voy a explicar como descargar videos y películas...
Descargar Facebook Móvil Gratis
Por si aún no lo han hecho, es posible descargar Facebook Móvil...
Cómo generar tráfico web con las redes sociales - Paso a Paso
Muchas empresas están publicando contenidos como la forma de crear...

Artículo Recomendado

3 Tips cruciales para recuperar archivos eliminados
¿Te imaginas perder el trabajo de toda una semana en tan solo unos segundos? Todos hemos pasado por este problema. Quizás eliminamos por error un archivo importante o lo borramos sin pensar que era valioso para otro... más