我的腳本由兩部分組成。 第一部分生成HTML頁面。 第二部分從網絡加載資源並將其保存到文件中。 加載操作很長,最多可能需要10秒。 第一部分和第二部分完全獨立(加載對頁面外觀沒有影響)。PHP:如何在腳本結束之前顯示頁面?
在第一部分結束時,我調用flush(),它使頁面立即顯示。
但是,嵌入SWF電影此時不顯示。
SWF是頁面的關鍵元素,它必須儘可能快地顯示。 它被嵌入到SwfObject庫的頁面中。 問題是SwfObject開始在頁面的「onLoad」事件中打開SWF。
但是「onLoad」事件發生在第二個部分的末尾。 即「onLoad」可以在10秒內發生。 因此,儘管flush()調用用戶必須等待10秒徒然。
是否有可能解決PHP端的任務? 是否可以在單獨的進程中運行「加載」任務(第二部分)? 是否有可能在第二部分開始之前告訴瀏覽器,該頁面是否爲reay,並且您可以廣播「onLoad」事件。
感謝您閱讀這個很長的故事。
如果JS被禁用,該怎麼辦;)? – Wookai 2009-08-14 08:46:45
然後,我絕對建議使用pcntl-fork或系統在單獨的進程中運行第二部分。 – 2009-08-15 08:47:47