一、什麼是緩衝區?
答:就是把輸入或者輸出的內容先放進內存,而不顯示或者讀取,作用:協調高速CPU和相對緩慢的IO設備(磁盤等)的運作。
二、什麼是php 輸出緩存控制(Output Control)
答:由於輸出php類似echo輸出的時候,首先輸出到php buffer裏面的。所以我們可以控制這個緩存裏面的數據了。
三、php執行過程原理
當執行PHP的時候,如果碰到了echo print_r之類的會輸出數據的代碼,PHP就會將要輸出的數據放到PHP自身的緩衝區,等待輸出。
當PHP自身的緩衝區接到指令,指示要輸出緩衝區的內容時,將會把緩衝區內的數據輸出到apache上,apache接受到PHP輸出的數據,然後再把該數據存在到apache自身的緩衝區內,等到輸出
當apache接受到指令,只是要輸出緩衝區的內容時, 將會把緩衝區的內容輸出,返回到瀏覽器。
由此可見,PHP要輸出數據的時候,將會經過兩個緩衝區(先是自身的,然後是apache的),再返回到瀏覽器。
四、實例如下:
1.
***************************************
echo "hello word <br/>"; //向瀏覽器輸出hello word
$content = ob_get_contents(); //返回php緩衝區的內容
var_dump($content);//打印php緩衝區的內容。
結果是:
hello word
string(16) "hello word"
這是說明緩衝區裏面是有數據。也就是先進來php緩衝區的。
***************************************
參照以下網址學習
http://www.cnblogs.com/liuzhang/p/4161213.html