<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://prendreuncafe.com/blog/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>Prendre un Café - Tag - debug</title>
  <link>http://prendreuncafe.com/blog/</link>
  <atom:link href="http://prendreuncafe.com/blog/feed/tag/debug/rss2" rel="self" type="application/rss+xml"/>
  <description></description>
  <language>fr</language>
  <pubDate>Tue, 01 Feb 2011 14:49:24 +0100</pubDate>
  <copyright>Contenus sous licence Creative Commons BY-SA</copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Debug PHP facile avec Firefox, Firebug et FirePHP</title>
    <link>http://prendreuncafe.com/blog/post/2008/07/20/Debug-PHP-facile-avec-Firefox-Firebug-et-FirePHP</link>
    <guid isPermaLink="false">urn:md5:6804fe93c7365b5133c5b195d8d00c86</guid>
    <pubDate>Sun, 20 Jul 2008 11:39:00 +0200</pubDate>
    <dc:creator>NiKo</dc:creator>
        <category>Dev</category>
        <category>debug</category><category>firebug</category><category>firefox</category><category>firephp</category><category>php</category>    
    <description>    &lt;p&gt;Tous ceux qui ont déjà eux à batailler avec du code javascript connaissent certainement la fabuleuse extension &lt;a href=&quot;http://getfirebug.com/&quot; hreflang=&quot;en&quot;&gt;Firebug&lt;/a&gt; pour &lt;a href=&quot;http://getfirefox.com/&quot; hreflang=&quot;en&quot;&gt;Firefox&lt;/a&gt;. 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.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://www.firephp.org/&quot; hreflang=&quot;en&quot;&gt;FirePHP&lt;/a&gt; est une autre extension qui a pour but de proposer le même service mais pour le langage &lt;a href=&quot;http://fr.php.net/&quot; hreflang=&quot;fr&quot;&gt;PHP&lt;/a&gt;. 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 :&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://prendreuncafe.com/blog/public/images/Dev/PHP/firephpdemo.png&quot; alt=&quot;Démo FirePHP&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;Démo FirePHP, juil 2008&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Une fois l'&lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/addon/6149&quot; hreflang=&quot;en&quot;&gt;extension Firefox&lt;/a&gt; installée, pour pouvoir envoyer un message de log dans la console depuis vos scripts, il faut utiliser une librairie spécifique PHP fournie &lt;a href=&quot;http://www.firephp.org/DownloadRelease/FirePHPLibrary-FirePHPCore-0.1.1&quot;&gt;téléchargeable&lt;/a&gt; depuis la &lt;a href=&quot;http://www.firephp.org/&quot; hreflang=&quot;en&quot;&gt;page d'accueil&lt;/a&gt; du projet FirePHP. Cette librairie très simple est d'ailleurs &lt;a href=&quot;http://www.firephp.org/Wiki/Reference/Fb&quot; hreflang=&quot;en&quot;&gt;documentée ici&lt;/a&gt;. Une fois l'archive récupérée, décompressez-la et appelez FirePHP de cette façon depuis un script PHP standard :&lt;/p&gt;

&lt;pre&gt; php
require_once '/path/to/firephp/lib/FirePHPCore/FirePHP.class.php';

$f = FirePHP::getInstance(true);
$f-&amp;gt;fb('Hello FirePHP console', FirePHP::INFO);
$f-&amp;gt;fb(array('hello' =&amp;gt; 'how are you?'));
$f-&amp;gt;fb(array('hello' =&amp;gt; array('how', 'are', 'you')));
$f-&amp;gt;fb(array('foo', 'bar'), 'Results', FirePHP::WARN);

$o = new stdClass();
$o-&amp;gt;foo = 'foofoo';
$o-&amp;gt;bar = 'barbar';

$f-&amp;gt;fb($o);
&lt;/pre&gt;


&lt;p&gt;Pour envoyer les informations de debug à la console, la librairie PHP envoie les données sérialisées au format &lt;a href=&quot;http://json.org/&quot; hreflang=&quot;en&quot;&gt;JSON&lt;/a&gt; dans un entête HTTP personnalisé dédié (&lt;em&gt;X-FirePHP-Data&lt;/em&gt;). 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.&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://prendreuncafe.com/blog/public/images/Dev/PHP/firephphttp.png&quot; alt=&quot;Données JSON passées dans un entête dédié&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;Données JSON passées dans un entête dédié, juil 2008&quot; /&gt;&lt;/p&gt;


&lt;p&gt;En bref, un outil génialement simple et efficace.&lt;/p&gt;&lt;hr/&gt;&lt;p style=&quot;margin:.5em 0;padding:.5em;border:1px solid #333;background:#eee;color:#222&quot;&gt;&lt;small&gt;Ce billet intitulé &lt;a href=&quot;http://prendreuncafe.com/blog/post/2008/07/20/Debug-PHP-facile-avec-Firefox-Firebug-et-FirePHP&quot;&gt;Debug PHP facile avec Firefox, Firebug et FirePHP&lt;/a&gt; a été rédigé par &lt;a href=&quot;http://prendreuncafe.com/cv&quot;&gt;Nicolas Perriault&lt;/a&gt; et publié sur le blog &lt;a href=&quot;http://prendreuncafe.com/blog/&quot;&gt;Prendre un Café&lt;/a&gt; sous licence &lt;a href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.5/&quot;&gt;Creative Commons BY-NC-SA&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;</description>
    
    
    
      </item>
    
</channel>
</rss>

