Debug PHP facile avec Firefox, Firebug et FirePHP
Par NiKo le dimanche 20 juillet 2008, 11:39 - Dev - Lien permanent
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 :

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 fournie 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é dédié (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.

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



















Commentaires
1. Le dimanche 20 juillet 2008, 17:16 par Geoffrey
2. Le dimanche 20 juillet 2008, 17:20 par NiKo
3. Le dimanche 20 juillet 2008, 19:47 par Jawad
4. Le dimanche 20 juillet 2008, 21:15 par Pascal
5. Le dimanche 20 juillet 2008, 21:34 par NiCoS
6. Le dimanche 20 juillet 2008, 21:36 par NiKo
7. Le dimanche 20 juillet 2008, 22:08 par Nico
8. Le dimanche 20 juillet 2008, 22:32 par NiKo
9. Le dimanche 20 juillet 2008, 22:46 par Nico
10. Le dimanche 20 juillet 2008, 22:48 par NiKo
11. Le dimanche 20 juillet 2008, 23:05 par Nico
12. Le dimanche 20 juillet 2008, 23:12 par NiKo
13. Le dimanche 20 juillet 2008, 23:32 par NiCoS
14. Le dimanche 20 juillet 2008, 23:39 par NiCoS
15. Le dimanche 20 juillet 2008, 23:54 par arnod'mental
16. Le lundi 21 juillet 2008, 10:27 par Tarlak
17. Le mardi 22 juillet 2008, 21:46 par Jawad
18. Le mercredi 23 juillet 2008, 08:58 par xheyther
19. Le vendredi 1 août 2008, 05:56 par Christoph
20. Le vendredi 1 août 2008, 08:20 par NiKo