我正在下载这样的大文件:
$fd = fopen($url, "r");
while(!feof($fd))
{
echo fread($fd, 4096);
ob_flush();
flush();
}
但我有一个问题 - 文件只下载到11,6 MB并停止... 哪里有问题?我使用ob_flush和flush,所以我认为 - 它应该有效。
感谢。
答案 0 :(得分:1)
如果您只想输出远程文件,则不需要fread()
循环。您可以使用:
readfile($url);
那就是它。但是,您显示的脚本也应该可以正常工作。原因必须是远程服务器。
如果下载时间过长,您应该考虑将执行时间设置为无限制:
set_time_limit(0);
...在你的剧本之上。