php 睡眠,php输出与sleep()
您要實現的是從PHP向瀏覽器的增量輸出.
這是否可實現取決于您的服務器以及您如何調用PHP.
FastCGI下的PHP
當PHP在FastCGI下而不是作為Apache模塊運行時,你可能更容易遇到這種問題,因為服務器和PHP進程之間的耦合并不緊密耦合.一旦數據離開PHP進程,FastCGI通信就使用輸出緩沖,只有在請求完全完成后才將輸出發送到瀏覽器,或者此緩沖區已滿.除此之外,PHP進程往往會在一定時間后終止,以避免讓任何一個運行太長時間.
也就是說,ob_end_flush()(或ob_flush())和flush()的組合仍然會導致PHP請求清除下游緩沖區,因此這可能仍然有效.您可能還需要調查是否需要延長PHP腳本的時間限制.
mod_php下的PHP
如果您正在使用mod_php,則可以逐步向瀏覽器寫入.使用flush()命令確保PHP模塊立即刷新它.如果你沒有輸出緩沖,或某些Apache模塊,如mod_gzip,那么它應該立即發送到用戶的瀏覽器.更重要的是,您可以在默認配置下盡可能長時間地運行PHP腳本(在PHP中使用set_time_limit()),當然它會占用一些內存.
某些瀏覽器可能會遇到問題,這些瀏覽器在下載一定量的頁面之前不會開始呈現頁面.某些版本的IE可能會等待1KB.我發現Chrome可以等待更多.許多人通過添加填充來解決這個問題,例如在文檔頂部長1或2 KB的注釋.
總結
以上是生活随笔為你收集整理的php 睡眠,php输出与sleep()的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何知晓自己所在地区苹果春季特别活动开播
- 下一篇: php读取mp3信息,PHP获取MP3的