| | ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot |
ob_start説明bool ob_start ( [callback output_callback [, int chunk_size [, bool erase]]] )この関数は出力のバッファリングをオンにします。出力のバッファリングが アクティブの場合、(ヘッダ以外の)スクリプトからの出力は実際には 行われず、代わりに内部バッファに追加されます。 この内部バッファの内容は、ob_get_contents() を 用いて文字列変数にコピーされます。実際の出力は、 ob_end_flush() がコールされた際に行われます。 ob_end_clean() は、バッファの内容を出力せずに 消去します。 オプションの引数 output_callback 関数を指定する ことが可能です。この関数は、パラメータとして文字列をとり、文字列を返します。 このコールバック関数は、 ob_end_flush() がコールされた際、またはリクエストの 最後にブラウザに出力をフラッシュする際にコールされます。 output_callback がコールされた際に、この関数は 出力バッファの内容をパラメータとして受け取ります。このコールバック関数は、 新規の出力バッファを実際に出力される結果として返す必要があり、この結果は ブラウザに送信されます。 output_callback がコール可能な関数ではない場合 FALSE を返します。 コールバック関数が 2 つの引数をとる場合、2 番目のパラメータは 以下のビットフィールド PHP_OUTPUT_HANDLER_START、 PHP_OUTPUT_HANDLER_CONT および PHP_OUTPUT_HANDLER_END を含みます。
オプションのパラメータ chunk_size が渡された場合、 出力が chunk_size バイトを超えるたびに、最初の 改行の際にコールバック関数がコールされます。 output_callback パラメータに NULL 値を渡すと、 これをバイパスすることができます。 オプションのパラメータ erase に FALSE を指定すると、 スクリプトが終了するまでバッファは削除されません(PHP 4.3.0 以降で対応)。 出力バッファはスタッカブルであり、このため、他の ob_start() がアクティブの間に ob_start() をコールすることが可能です。この場合、 ob_end_flush() を適当な回数コールするように してください。複数の出力コールバック関数がアクティブの場合、出力は ネストした順番で逐次連続的にフィルタ処理されます。 ob_end_clean()、 ob_end_flush()、ob_clean()、 ob_flush() および ob_start() をコールバック関数の内部からコールすることはできません。実際にコールした 際の挙動は未定義です。バッファの内容を消去したい際には、 コールバック関数から ""(空文字列)を返してください。 同じく、print_r($expression, true) や highlight_file($filename, true) のような 出力バッファリング関数も、コールバック関数の内部からコールすることは できません。 出力は次のようになります。 ob_get_contents()、 ob_end_flush()、 ob_end_clean()、 ob_implicit_flush()、 ob_gzhandler()、ob_iconv_handler()、 mb_output_handler() および ob_tidyhandler() も参照ください。 |
|
各種マニュアル:
PHPマニュアル |
PEARマニュアル |
Smarty(英語)マニュアル |
PHP-GTKマニュアル |
「ob_start」をGoogle検索
|