鉄馬の工具箱

te2uma(てつうま)のブログです。調べ物のメモなどを共有します。

このエントリーをはてなブックマークに追加

Laravelでデバッグする際のヒント

Laravelの ログ出力クラス を使うと、実行途中の値の確認などがやりやすいので、デバッグに便利です。

Logクラス の書式は次のとおり:

Log::write('ERROR_TYPE', 'ERROR_MESSAGE')
    ERROE_TYPE: エラーの種類(エラーレベル)。ERROR、WARNING、INFO、DEBUGなどが一般的。
    ERROR_MESSAGE: 表示するエラーメッセージ。

ショートカットとして、以下も定義されています。

Log::ERROR_TYPE('ERROR_MESSAGE');

ログの出力先は「【Laravelプロジェクトのルート】/storage/logs」で、「YYYY-MM-DD.log」といったファイル名で保存されます。

基本的には、次のように使うとよさそうです。

Log::debug('表示したいエラーメッセージ');

複数の個所に仕込む場合は、種類の部分をラベルみたいに使って次のようにしてみてもよいかもしれません。

Log::a('Aポイントまで通過');
Log::b('Bポイントまで通過');

dd()

Laravelのヘルパーメソッドに dd() というものもあるみたいです。「与えられた変数をダンプして、スクリプトを止める」と説明されているので、手っ取り早く変数の中身をブラウザ上で確認したい場合にはよいかもしれません。

dd()の定義部分 を読むと、

die(var_dump($value));

とシンプルな実装。ただ、Chromeで試したら日本語が文字化けした(文字エンコードをShift_JISから手動でUTF-8に切り替える必要があった)のと、スクリプトがそこで中断してしまうのとで、使いどころが少し難しい可能性も。

(最終更新日:2013/04/09)

このエントリーをはてなブックマークに追加