PHP - print_r()とvar_dump()について
print_r()
やvar_dump()
は、渡された内容を見やすい形式で出力する。文字列や数値の場合はecho
, print()
と同様に単純に文字列として出力する。
配列の場合は、以下のように出力する。
<?php $a = array('name' => 'azunobu', 'age' => 20, 'location' => 'Iwate'); print_r($a); var_dump($a);
出力
Array ( [name] => azunobu [age] => 20 [location] => Iwate ) array(3) { ["name"]=> string(7) "azunobu" ["age"]=> int(20) ["location"]=> string(5) "Iwate" }
オブジェクトの場合は、以下のように出力する。
<?php class Sample { var $name = 'azunobu'; } $o = new Sample; print_r($o); var_dump($o);
出力
Sample Object ( [name] => azunobu ) object(Sample)#1 (1) { ["name"]=> string(7) "azunobu" }
print_r()とvar_dump()の違い
まず、print_r()
は論理値やNULLだとうまく表示してくれない。
print_r(true); // "1"を出力 print_r(false); // ""を出力 print_r(null); // ""を出力
一方、var_dump()
は、論理値やNULLであっても表示してくれる。
var_dump(true); // "bool(true)"と出力 var_dump(false); // "bool(false)"と出力 var_dump(null); // "bool(null)"と出力
以上のことから、デバッグ時に使うとすれば、人間的に読みやすい形式で出力してくれるvar_dump()
のが使い勝手が良さそう。
なお、出力された値をブラウザで確認する際は、ソースを見たほうが改行がうまく効いて見やすい。Chromeであればページの適当なところを右クリックし ページのソースを表示
で表示できる。
参考
- 作者: Kevin Tatroe,Peter MacIntyre,Rasmus Lerdorf,高木正弘
- 出版社/メーカー: オライリージャパン
- 発売日: 2014/03/25
- メディア: 大型本
- この商品を含むブログ (8件) を見る