0
我用捲曲在PHP中使用下面的代碼來下載文件:捲曲無法下載完整的文件
set_time_limit(0);
$tmp = __DIR__."\\downloads\\{$this->id}";
$fp = fopen ($tmp, 'w+');
$ch = curl_init($this->url);
curl_setopt($ch, CURLOPT_TIMEOUT, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FILE, $fp);
$r = curl_exec($ch);
curl_close($ch);
fclose($fp);
echo filesize($tmp)."\n";
但有時下載的文件大小小於原(原:3.2GB,下載:1.1GB),當使用curl命令行時,它會正確下載文件。試圖重新下載該文件將始終具有相同的結果,但下載的文件大小差異較小。
我也嘗試使用:
file_put_contents($tmp, fopen($this->url, 'r'));
,但結果是一樣的。大多數文件正確下載,但我需要知道爲什麼這個文件不是。
也許有些問題與網絡?當您停止時可以繼續下載時,您應該尋找解決方案。 –
我可以下載沒有問題的其他大文件,但此文件除外。我認爲這個特定文件存在問題,但可以使用cURL,IDM和Web瀏覽器在PHP之外成功下載。 –