1.バッファ、即ちバッファ、OBは簡略にoutput_bufferingあります
2.echo、ますprint_r => PHPにoutput_buffering =>はwebServerバッファ=>ブラウザバッファ=>ブラウザ表示
エコーからの機能は、クライアントにメッセージを送信するためにしますprint_rは、二つのバッファを経て、クライアントには、ブラウザのキャッシュを経験してきました。
言い換えれば、あなたは出力データをエコーするとき、実際には、このバッファはデフォルトではオフになっていることだけを、キャッシュの層を通過することです、我々は、出力データを開くとするとき、バッファ、それは、バッファを行きますデータ後に完全に自動的に出力されます。
デフォルトでは、プログラムのob_start()になった場合は3 ..、エコーのすべての出力がキャッシュOBに保存され、OBシリーズ機能が動作するために使用することができ、そうでない場合、プログラムの実行が終了すると、送信データバッファは、意志ブラウザへ
OBの基本原理:OBキャッシュ開いている場合、OBのキャッシュ上の最初のデータのエコー。ヘッダ情報であれば、直接キャッシュに。ページが最後に実行すると、それはプログラムのキャッシュにキャッシュされたデータを、OB、その後、ブラウザになります
4.
OBの基本的な機能は:
1)再使用ますsetcookie()、ヘッダ()またはブラウザ機能の出力、送信ヘッダ・ファイルに起因する誤差を有した後のsession_start()を防止します。実際には、このような使用はあまり良いコーディング慣行を開発するために、より良いです。
2)いくつかの機能の出力をキャプチャすることは()などのphpinfoとして、取得したHTMLの多くを出力し、私たちは、たとえば、変数$情報=のphpinfo()を使用することはできませんすることはできません。緩いそれをOB、この時間をキャプチャします。
3)出力処理の内容は、例えば、gzip圧縮は、例えば、単純化された変換は、例えば、いくつかの文字列を置き換えます。
4)静的ドキュメントを生成し、実際には、それは、ページ全体の出力をキャプチャすることであり、その後、ファイルとして保存します。多くの場合、HTMLを生成する、またはフルページキャッシュを使用。
ob_start():出力バッファ制御開い
戻り値:成功、失敗またはFALSEにTRUEを返します。
ob_get_contents():出力バッファの内容を返す
戻り値:コンテンツ出力バッファ、出力バッファが有効か戻りFALSE場合ではありません
ob_clean():クリア(消去)、出力バッファの内容。戻り値なし
ob_end_clean:内部バッファの内容を削除し、内部バッファオフ
戻り値:成功した場合にTRUEを、失敗した場合にFALSEを返します。
ob_flush():洗い流す出力バッファの内容(送出)。戻り値なし
ob_end_flush:ブラウザに内部バッファの内容を送信し、出力バッファを閉じます。
戻り値:成功した場合にTRUEを、失敗した場合にFALSEを返します。