从URL下载文件到服务器嗯,这个看起来很简单,而且确实如此。要将文件下载到服务器,所需做的就是:file_put_contents("Tmpfile.zip", file_get_contents("http://someurl/file.zip"));只有一个问题。如果你有一个很大的文件,比如100 MB。然后,您将耗尽内存,无法下载该文件。我想要的是一种在下载文件时将文件写入磁盘的方法。这样,我可以下载更大的文件,而不会遇到内存问题。
3 回答
白衣染霜花
TA贡献1796条经验 获得超10个赞
private function downloadFile($url, $path){
$newfname = $path;
$file = fopen ($url, 'rb');
if ($file) {
$newf = fopen ($newfname, 'wb');
if ($newf) {
while(!feof($file)) {
fwrite($newf, fread($file, 1024 * 8), 1024 * 8);
}
}
}
if ($file) {
fclose($file);
}
if ($newf) {
fclose($newf);
}}- 3 回答
- 0 关注
- 1636 浏览
添加回答
举报
0/150
提交
取消
