print_r()は、解り易い形式で変数の値に関する情 報を表示します。string, integer, floatを指定した場合はその値が出力されます。 arrayを指定した場合、キーと要素を表す形式で値が表示 されます。objectに関しても同様の表示形式となります。
print_r()は、配列ポインタを終端まで移動するこ とに注意して下さい。ポインタを最初に戻すために reset()を使用して下さい。
print_r()を var_dump()と比較してみて下さい。
ティップブラウザに直接結果を出力する全てのものと同様に、出力制御関数を使用してこの関数の出力をキャプチャーし、文字列等に保存することが可能です。
<pre>
<?php
$a = array ('a' => 'apple', 'b' => 'banana', 'c' => array ('x','y','z'));
print_r ($a);
?>
</pre> |
出力は次のようになります:
<pre>
Array
(
[a] => apple
[b] => banana
[c] => Array
(
[0] => x
[1] => y
[2] => z
)
)
</pre> |
注意 PHP 4.0.4より前のバージョンでは、自分自身への直接または間接の参 照を含むarrayまたはobjectが指定された 場合には、無限にprint_r()が実行されてしまいま した。print_r($GLOBALS)が例で、 $GLOBALSはそれ自体自分自身への参照を有するグ ローバル変数です。
ob_start(), var_dump(), var_export()も参照下さい。