ob_*系列的函式,其實本質就是對輸出的內容進行獲取處理。
程式中有些內容,比如伺服器的資訊可以直接輸出(phpinfo()),但是如果想儲存起來,就必須開啟緩衝區獲取。
特別是靜態化的模板,需要對模板進行正則的各種處理,現在用的不多了,因為基本上前後端分離了。
另外看起來很簡單的echo,這個是php的特殊結構體,不是函式!
底層其實是呼叫了c函式的fwrite方法,最終輸出到瀏覽器或者使用者看到是因為伺服器處理過了。
如果啟用過了ob_start,那麼echo出來的資料是暫時儲存在了快取區中,當指令碼結束後,一次性傳送給webserver,進而給客戶端。
ob 函式的使用
ob 函式的使用 1.頁面靜態化 id isset get id get id 0 0 filename html date ymd news id id.html if file exists html date ymd echo filename if file exists filename ...
PHP常見的ob系列函式
1 ob start 開啟緩衝區,所有輸出的資訊不直接傳送到瀏覽器,而是儲存在緩衝區裡面 2 ob clean 刪除內部緩衝區的內容,不關閉緩衝區 不輸出 3 ob end clean 刪除內部緩衝區的內容,關閉緩衝區 不輸出 4 ob get clean 返回內部緩衝區的內容,關閉緩衝區。相當於執...
Linux中echo的直譯器問題
在linux終端中執行echo e會顯示 e 在vim中寫的指令碼是這樣的 bin sh read name echo name it is a test echo e ok n echo it is a test 這一串 在bash中執行,會顯示出 e e ok it is a test剛開始以為...