我寫了一個PHP下載腳本,如下所示,我的腳本正在下載文件,但我覺得瀏覽器(鉻)進度條沒有得到正常更新。如何在下載過程中控制瀏覽器進度更新?
我的文件的大小爲320MB,同時下載該文件的進度越來越隨機爲「11MB,76MB,200MB & 320MB」或「70MB & 320MB」等更新
在大多數網站的下載進度更新發生在像每個MB之後的常量塊中,所以我想知道我們如何控制進度更新間隔,可能是通過發送一些額外的頭文件或其他東西。
我想通過更新恆定時間間隔的進度來改善用戶體驗,所以請任何人以正確的方式幫助我處理這種情況。
// HTTP Headers for ZIP File Downloads // http://perishablepress.com/press/2010/11/17/http-headers-file-downloads/ // file variables $filename = "Movie Tunes.zip"; $filepath = "files/"; // http headers for zip downloads header("Pragma: public"); header("Expires: 0"); header("Cache-Control: public,must-revalidate, post-check=0, pre-check=0"); header("Content-Description: File Transfer"); // MIME header("Content-type: application/octet-stream"); header("Content-Disposition: attachment; filename=\"".$filename."\""); header("Content-Transfer-Encoding: binary"); // MIME header("Content-Length: ".filesize($filepath.$filename)); ob_end_flush(); @readfile($filepath.$filename);
感謝,
西瓦
你是在本地測試嗎?轉移需要多長時間?也許這只是過於快速... – deceze 2012-07-25 07:35:13
是的,我在本地測試,快速下載發生可能是因爲本地環境。但想知道我們是否可以通過任何方式控制進度更新間隔... – Siva 2012-07-25 08:20:53