TUTORIEL/PRATIQUE
 
10/09/2008

Extension Firefox : débogage PHP avec FirePHP

L'outil repose sur l'extension Firebug, centrée elle sur le débogage JavaScript. Elle propose, une fois installée, l'affichage dans la console des messages de debugging émis depuis les scripts PHP.
  Envoyer Imprimer  

Article sous licence Creative Commons, de Nicolas  Perriault (développeur et architecte Web)

Tous ceux qui ont déjà eux à batailler avec du code JavaScript connaissent certainement la fabuleuse extension Firebug pour Firefox. L'outil propose une console permettant d'examiner l'environnement d'exécution JavaScript mais aussi HTML et CSS de n'importe quelle page Web.

FirePHP est une autre extension qui a pour but de proposer le même service mais pour le langage PHP. L'extension repose elle-même sur Firebug et propose, une fois installée, l'affichage dans la console des messages de debug émis depuis vos scripts PHP :

 

firephp
 
Copie d'écran de FirePHP © FirePHP
 

 

Une fois l'extension Firefox installée, pour pouvoir envoyer un message de log dans la console depuis vos scripts, il faut utiliser une librairie spécifique PHP téléchargeable depuis la page d'accueil du projet FirePHP. Cette librairie très simple est d'ailleurs documentée ici. Une fois l'archive récupérée, décompressez-la et appelez FirePHP de cette façon depuis un script PHP standard :

 

 require_once '/path/to/firephp/lib/FirePHPCore/FirePHP.class.php';
 
$f = FirePHP::getInstance(true);
$f->fb('Hello FirePHP console', FirePHP::INFO);
$f->fb(array('hello' => 'how are you?'));
$f->fb(array('hello' => array('how', 'are', 'you')));
$f->fb(array('foo', 'bar'), 'Results', FirePHP::WARN);
 
$o = new stdClass();
$o->foo = 'foofoo';
$o->bar = 'barbar';
 
$f->fb($o); 

Pour envoyer les informations de debug à la console, la librairie PHP envoie les données sérialisées au format JSON dans un entête HTTP personnalisée dédiée (X-FirePHP-Data). Ainsi, aucune interférence n'est possible avec vos scripts existants, la seule condition étant bien entendu de ne pas lancer la sortie standard PHP avant que ces entêtes aient été envoyés.

reponse firephp
 
Réponse © FirePHP
 

 

En bref, un outil génialement simple et efficace.

 

Article sous licence Creative Commons, de Nicolas  Perriault (développeur et architecte Web)


JDN Développeur Envoyer Imprimer Haut de page
Votre avis sur cette publicité

Sondage

Quel est votre système Linux de prédilection ?

Tous les sondages

BOURSE

 

RUBRIQUES