php で、print_rの内容などをファイルに保存したい場合があります。
$buff = print_r($hensu);
のようにできればよいのですが、これは出来ません。
こういう風に、呼び出してすぐ出力される関数がphpには結構あります。
これは、出力をバッファリングすることで出力内容を得る事が可能です。
<?php
ob_start();
print_r($_POST);
$buffer = ob_get_contents();
ob_end_clean();
$fp = fopen("print_r","w");
fputs($fp,$buffer);
fclose($fp);
?>
といった感じで、
ob_start() によってバッファリングを開始し、この後バッファしたい処理(print_rなど)を記述します。
そして、
ob_get_contents でバッファしたコンテンツを取得。
ob_end_clean() でバッファリング内容をクリアし、標準出力に出力しないようにします。
こうすると $buffer に print_r の内容が入ります。
スポンサードリンク
もどる