php頁面靜態化—buffer

buffer 其實就是緩衝區,一個內存地址空間,主要用於存儲數據區域;

我們拿操作系統的buffer來舉一個例子:

當我們新建了一個文件,然後在文件中輸入一些數據,然後點擊保存的時候,我們看到的是這些數據全部保存到了

新建文件對應的磁盤中,但是這些數據不是直接就保存到磁盤中的,而是經過了buffer這個中間過程。

當我們點擊保存的時候,這些數據首先保存在了buffer中,當buffer被這些數據寫滿後,然後纔將buffer中的數據寫

到磁盤中;


php 的buffer與操作系統的buffer類似但是不完全一樣;

當我們執行php程序的時候,如果它有輸出數據,它並不是直接將數據通過tcp傳輸給客戶端瀏覽器並且顯示。同樣,

它也經歷了一個buffer。當我們執行echo語句或html代碼等等,它先是到緩衝區,當緩衝區被寫滿之後,腳本進程

就會將php的buffer中的數據通過tcp然後傳給客戶端瀏覽器,這時它就能把內容呈現出來;

輸出流程:內容 -> php buffer -> tcp -> 終端;


在php的配置文件,php.ini文件中,有一個屬性output_buffering就是用來開啓php buffer的。在不同的php版本中它的

默認值可能不同,在高版本的php中一般都是默認開啓的,即output_buffering = on;

我們只要開啓它就可以使用php的buffer。如果在這裏沒有開啓,我們也可以使用php程序來開啓它;


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章