作成日:2006/05/10
1X.4 出力バッファ制御
| 構文 | 説明 |
|---|---|
void flush ( void ) |
Webサーバの出力バッファの内容を強制出力します。(※下図を参照して下さい) PHPの出力バッファリングが有効な場合は、ob_flush() に続けて flush() を呼び出します。 用例:
header("Content-Type: text/plain");
echo "Hello";
ob_flush(); // PHPの出力バッファを強制出力します。
flush(); // Webサーバの出力バッファを強制出力します。
sleep(2); // "Hello"はブラウザで表示されているはずです。
echo " world.\n"; // 2秒待つと" world."も表示されます。
|
bool ob_start ([callback output_callback [,int chunk_size [,bool erase]]] ) |
PHPの出力バッファリングを有効にします。 出力バッファリングが有効な場合、ヘッダー以外の出力はPHPの内部バッファに追加されます。 ob_start() はコールバック関数を使って、バッファ出力する内容に各種変換を施す事ができます。 用例:出力バッファリングによる漢字コードの変換
// mb_http_output()関数は出力コード系をSJISに変更します。
// ob_start()関数は出力バッファリングを有効にして、
// 出力ハンドラを mb_output_handler に設定します。
mb_http_output('SJIS');
ob_start('mb_output_handler');
用例:自前のコールバック関数の使用
function MyHttpOutput($buffer){
return str_replace('%date',date("Y-m-d"),$buffer);
}
// %dateはdate("Y-m-d")で置換されて出力バッファに入ります。
echo "Date: %date\n";
|
void ob_clean ( void ) |
PHPの出力バッファの内容をクリアします。 |
void ob_flush ( void ) |
PHPの出力バッファの内容を強制出力します。( ※下図を参照して下さい ) ブラウザに出力するには、ob_flush()に続けてflush()を呼び出します。 |
bool ob_end_clean ( void ) |
PHPの出力バッファの内容をクリアし、出力バッファリングを無効にします。 |
bool ob_end_flush ( void ) |
PHPの出力バッファの内容を強制出力し、出力バッファリングを無効にします。 |
string ob_get_contents ( void ) |
PHPの出力バッファの内容を返します。バッファリングが無効な場合、FALSE を返します。 |
int ob_get_length ( void ) |
PHPの出力バッファの内容の長さを返します。バッファリングが無効な場合、FALSE を返します。 |
出力バッファの関係
