DebugBarはPHP製のオープンソース・ソフトウェア(MIT License)です。

PHPのデバッグと言えばvar_dumpが最も良く知られていると思いますが、画面上にメッセージが出てデザインが狂いますし、連想配列などは見づらくなります。そこでもっとスマートにデバッグできるDebugBarを紹介します。

[![](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 10.47.24_thumb.1376913235.png)](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 10.47.24.1376913235.png)
画面下に出ているバーがDebugBarです。

[![](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 10.47.29_thumb.1376913243.png)](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 10.47.29.1376913243.png)
クリックすると内容が表示されます。これはメッセージです。

[![](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 10.47.38_thumb.1376913248.png)](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 10.47.38.1376913248.png)
配列を見やすく整形もできます。

[![](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 10.48.02_thumb.1376913253.png)](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 10.48.02.1376913253.png)
リクエストの内容も確認できます。

[![](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 10.48.06_thumb.1376913257.png)](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 10.48.06.1376913257.png)
ある処理における経過時間をグラフ化しています。

[![](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 10.48.13_thumb.1376913262.png)](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 10.48.13.1376913262.png)
エラーがあればその捕捉もできます。

[![](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 10.48.25_thumb.1376913267.png)](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 10.48.25.1376913267.png)
最後に実行されたSQLについてです。こちらもエラーがあればその内容が表示されます。

こちらはデモのコード。

DebugBarの使い方は簡単で、AddMessageで出力したいメッセージを追加していきます。そして最後にHTMLに専用のスタイルシートやJavaScriptを読み込んで、メッセージ内容を出力すればOKです。まるで専用のDeveloper toolのようです。

MOONGIFTはこう見る

PHPのデバッグのしづらさは昔から続いています。ブレークポイントを設けて変数を確認できるシステムやChromeのDeveloper toolにメッセージを飛ばせるものなど多数ありますが、なかなか広がりません。

問題は出力しても100%確実に出力される訳ではなく、それを一時的にバッファしたり消去できる機能があることではないでしょうか。だから最終的にvar_dumpしてexitするのが効果的になってしまいます。もっと良いデバッグ方法が見つかれば全PHP開発者に受け入れられるのではないでしょうか。

PHP DebugBar

maximebf/php-debugbar