2010年1月19日火曜日

FirePHPは便利

FirePHPは、FirefoxのアドオンのFirebugの機能拡張で、インストールすることで、サーバ側の出力をFirebugのコンソールに出力できる。

HTTPヘッダーを利用しているようで、試してませんが、Ajaxの通信などでHTMLをブラウザに出力しない場合でも利用できるそうです。
Zend Frameworkのコンポーネントでは、Zend_logやZend_Db_Profilerなどで、出力先をFireBugのコンソールにできます。

(1)ログを内容を出力する
ログライターにZend_Log_Writer_Firebugを利用する。

$writer=new Zend_Log_Writer_Firebug();
$log=new Zend_Log($writer);
//日本語出力もOK
$log->info("日本語もOK");

日本語の出力も問題なくできました(UTF-8だけしか試してません)

(2)DBのプロファイルを出力する
プロファイラーに Zend_Db_Profiler_Firebugを設定する。

$db=Zend_Db::factory('Pdo_Pgsql', array(
 host=>'hogehoge',
 username=>'dbuser',
 password=>'dbpass',
 dbname=>'sampledb'
));
$profiler=new Zend_Db_Profiler_Firebug('All DB Queries');
$profiler->setEnabled(true);
$db->setProfiler($profiler);
Zend_Db_Table_Abstract::setDefaultAdapter($db);


Firebugのコンソールではテーブル構成で結構見やすい。

自分の環境では、なぜか、ページを出力しただけではコンソールに出力されず、その状態で一度Firebugをオフ/オンして再表示するとコンソールに表示される。
まだ安定してないのか、設定がよくないのか・・・・。
(追記)Firebugを1.50に更新したら直った。

0 件のコメント: