カサヒラボ RSSフィード

2007-06-08

[][]phpのエラーログに、array配列の中身をきれいに吐く。

知ってる人は当然かもしれませんが、

phpにおいて、

<?php
    $array = array("hoge","piyo",array(100,200,300));
    print_r($array);
?>

とか、配列を出力するコードで、

実行すると、print_rのおかげで、

  • 実行結果
Array
(
    [0] => hoge
    [1] => piyo
    [2] => Array
        (
            [0] => 100
            [1] => 200
            [2] => 300
        )

)

とarrayの中身がきれいに実行されますが、これをエラーログに吐こうとすると、


<?php
    $array = array("hoge","piyo",array(100,200,300));
    error_log($array));
?>
  • 実行した時のエラーログ
[09-Jun-2007 03:44:20] Array

となり、arrayの中身がわからずに、悲しいことになります。


こんなときは、error_log()中で、print_r()をかまして、第2引数をtrueにすれば、きれいに出力されます。

こんな感じ。

<?php
    $array = array("hoge","piyo",array(100,200,300));
    error_log(print_r($array,true));
?>
  • 実行した時のエラーログ
[09-Jun-2007 03:44:20] Array
(
    [0] => hoge
    [1] => piyo
    [2] => Array
        (
            [0] => 100
            [1] => 200
            [2] => 300
        )

)

きれいきれい。


以上、ちょっとしたTIPSでした。

てかこれ最近まで知らなかったので。。。


知ってからデバッグが便利になりました。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証