關於php關閉輸出快取,實現即時輸出

2021-08-09 19:37:05 字數 365 閱讀 2361

php輸出預設所有的輸出放到最後一起輸出,如果要實現即時輸出則需要關閉輸出快取,在apache下用到的方法是

ob_end_flush();//關閉快取

ob_implicit_flush(true);//每次快取即時輸出相當於每次輸出後呼叫flush()

需要注意的是每次輸出如果用ajax呼叫需要加乙個休眠時間,經測試100000毫秒是最小時間

以上是在apache下,在nginx下如果要實現則需要在php**中返回標頭檔案

header('x-accel-buffering: no'); //關閉輸出快取

知識點:php輸出快取

php即時 重新整理快取 輸出內容

通常的情況下用php輸出內容會先快取,到最後全部輸出.如果有乙個多步的耗時操作,所有的結果都要等到頁面執行完後才能看到.中間漫長的過程只有等待.能不能立即都看到每步的結果呢 ob flush 是重新整理php自身的緩衝區。flush 只有在php做為apache的module handler或者fi...

PHP實現即時輸出 實時輸出內容方法

老生長談了。純備忘 對於執行時間較長的php程式來說可能都需要即時輸出內容來檢視運 況。複製 程式設計客棧 如下 header content type text html charset utf 8 設定執行時間不限時 set time limit 0 清除並關閉緩衝,輸出到瀏覽器之前使用這個函式...

PHP即時實時輸出內容

一般情況下,php都是將整個頁面全部執行完成後,才會把要輸出的內容傳送回客戶端。for i 0 i 10 i 這段 會在十秒後輸出 12345678910 如果要實現每秒實時輸出一位可用以下兩種方式 設定執行時間不限時 set time limit 0 清除並關閉緩衝,輸出到瀏覽器之前使用這個函式。...