ob_get_flush

(PHP 4 >= 4.3.0, PHP 5, PHP 7)

ob_get_flush出力バッファをフラッシュし、その内容を文字列として返した後で出力バッファリングを終了する

説明

ob_get_flush ( void ) : string

ob_get_flush() は、 出力バッファをフラッシュしてその内容を文字列として返した後、 出力バッファリングを終了します。

出力バッファを開始するときに、 ob_start()PHP_OUTPUT_HANDLER_FLUSHABLE フラグを指定する必要があります。指定しなければ、ob_get_flush() は動作しません。

注意: この関数は ob_end_flush() と似ていますが、 この関数はバッファの内容を文字列として返すこともします。

返り値

出力バッファを返します。バッファリングが開始されていない場合は FALSE を返します。

例1 ob_get_flush() の例

<?php
// 出力バッファリングを On にします
print_r(ob_list_handlers());

// バッファをファイルに保存します
$buffer ob_get_flush();
file_put_contents('buffer.txt'$buffer);

print_r(ob_list_handlers());
?>

上の例の出力は以下となります。

Array
(
    [0] => default output handler
)
Array
(
)

参考

  • ob_end_clean() - 出力用バッファをクリア(消去)し、出力のバッファリングをオフにする
  • ob_end_flush() - 出力用バッファをフラッシュ(送信)し、出力のバッファリングをオフにする
  • ob_list_handlers() - 使用中の出力ハンドラの一覧を取得する