3 回答

TA貢獻1856條經(jīng)驗 獲得超17個贊
ob_flush發(fā)送應用程序啟動的緩沖區(qū)。ob_start()任何PHP腳本中都可能有多個嵌套的。ob_flush將當前內(nèi)容傳遞到上層。
PHP本身(可以自行決定)可以緩沖輸出。這取決于后端。但是通常FastCGI有一個套接字緩沖區(qū)。因此,還flush()需要調(diào)用以將當前內(nèi)容發(fā)送到Web服務器。
現(xiàn)在,Web服務器本身可能實現(xiàn)了另一個緩沖方案(mod_deflate或內(nèi)容過濾器),您對此沒有影響。但這很少,因為它需要專門配置。
無論如何,請同時使用兩者。

TA貢獻1876條經(jīng)驗 獲得超7個贊
ob_flush()是高級沖洗。它刷新高級緩沖區(qū),并將所有內(nèi)容放入準備發(fā)送的低級內(nèi)部緩沖區(qū)中。
請注意,ob_函數(shù)家族會創(chuàng)建緩沖區(qū)堆棧,因此,ob_flush()如果編寫代碼來利用此堆棧,那么盲目地在所有地方編寫確實會給您“奇怪的結(jié)果”。
flush() 是低級刷新,指示PHP刷新其內(nèi)部低級數(shù)據(jù)緩沖區(qū)。
仍然在其下方,有套接字層緩沖區(qū)。在此之下,有網(wǎng)絡層緩沖區(qū)。而且,在最低級別上,電子隊列沿著數(shù)據(jù)電纜傳輸。
- 3 回答
- 0 關注
- 459 瀏覽
添加回答
舉報