buffering
状態:-
閲覧数:2,263
投稿日:2014-01-07
更新日:2014-01-21
・複数の機器やソフトウェアの間でデータをやり取りするときに、処理速度や転送速度の差を補うためにデータを専用に設けられた記憶領域一時的に保存しておくこと
・バッファとの違いは、バッファが「データの一時的な保存場所のこと」を意味するのに対し、バッファリングは「バッファにデータを一時的に保存しておくこと」自体を指す
具体的な使用例
・負荷のかかる出力処理より本来の処理を優先させ、後から、バッファリングしたデータを出力させる、など
PHPにおける出力バッファリング制御
・出力制御関数により、「スクリプトから送信される出力」を制御することが可能
・「出力を制御」とは、簡単に言えば、そのまま出力するのではなく、一旦バッファに格納し、コールバック関数で何らかの処理を施したり変数に格納したりして、内容を変更したり出力順番を変更したりすること
使用例
・スクリプトがデー タ出力を開始した後、ヘッダをブラウザに送信(※デー タ出力後にヘッダをブラウザに送信すれば、通常、エラーとなる)
・なお、出力制御関数は、header() または setcookie()を使用して送信されたヘッダには作用せず、echo() のような関数と「PHPコードのブロック間 のデータ」にのみ作用する
・バッファとの違いは、バッファが「データの一時的な保存場所のこと」を意味するのに対し、バッファリングは「バッファにデータを一時的に保存しておくこと」自体を指す
具体的な使用例
・負荷のかかる出力処理より本来の処理を優先させ、後から、バッファリングしたデータを出力させる、など
PHP
PHPにおける出力バッファリング制御
・出力制御関数により、「スクリプトから送信される出力」を制御することが可能
・「出力を制御」とは、簡単に言えば、そのまま出力するのではなく、一旦バッファに格納し、コールバック関数で何らかの処理を施したり変数に格納したりして、内容を変更したり出力順番を変更したりすること
使用例
・スクリプトがデー タ出力を開始した後、ヘッダをブラウザに送信(※デー タ出力後にヘッダをブラウザに送信すれば、通常、エラーとなる)
・なお、出力制御関数は、header() または setcookie()を使用して送信されたヘッダには作用せず、echo() のような関数と「PHPコードのブロック間 のデータ」にのみ作用する