PHP的ob输出缓冲函数作用
生活随笔
收集整理的這篇文章主要介紹了
PHP的ob输出缓冲函数作用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
php ob_start 與 ob_end_flush() 是 php 的緩沖輸出函數。
ob_start([string output_callback])
打開輸出緩沖區,所有的輸出信息不在直接發送到瀏覽器,而是保存在輸出緩沖區里面,可選得回調函數用于處理輸出結果信息。?
ob_end_flush
結束(發送)輸出緩沖區的內容,關閉輸出緩沖區。
php 輸出東西,會保存在一個 php 維護的內存里,稱為 buffer 也行,
緩存也行,都是一個意思。然后當這個 buffer 滿了,php 會自動往 web server 發送這些數據。
也就是說每次 echo,并不一定會輸出東西,而是保存在 buffer 里。
ob_start() 的意思,可以理解為(但是實際上和我下面的說法有區別),
這個 buffer 由ob_ 系列函數來來控制,也就是,PHP 不會維護自己的 buffer,
不會自動把buffer 的內容自動發送到 web server,直到你
ob_end() 或者類似的 ob 操作。
ob_函數一般用來捕獲當前的輸出,跟效率是沒什么關系的。
至于為什么捕獲輸出,原因很多,例如我捕捉輸出,緩存到一個文件里,下次請求可以直接讀這個? cache 文件的內容作為輸出了。
總結
以上是生活随笔為你收集整理的PHP的ob输出缓冲函数作用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 家里蟑螂多能不能入药?
- 下一篇: PHP的ob多级缓冲设置