[英]flush() Not displaying output in PHP?
我有這個代碼:
set_time_limit(0);
header("Cache-Control: no-cache, must-revalidate");
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
ob_flush();
flush();
$start = time();
$secs = time() - $start;
while ($secs <= 300)
{
echo "this script has been running for $secs seconds.\n";
ob_flush();
flush();
sleep(1);
}
當我查看此頁面時,我想要做的是實時查看腳本運行了多長時間,如下所示:
相反,我得到的是一個空白的窗口,連續的“加載”標志持續5分鍾,突然5分鍾后我被一堆這些消息轟炸,我應該一次收到1條消息。
誰能解釋我做錯了什么?
ob_flush
不是flush
。 ob_flush
清除已打開的對象緩沖區。 由於您沒有打開對象緩沖區,因此不會刷新任何內容。
此外,Web瀏覽器和Web服務器軟件因為在輸出數據之前保持數據而臭名昭着。 確保GZIPing已關閉,並且您使用的是理智的瀏覽器。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.