我需要使用PHP下载一个文件,然后将下载的文件上传给用户。
例如:
如果可能的话,我如何使用curl来完成这个任务,或者如何使用普通的PHP (没有额外的库)
发布于 2009-09-08 08:28:00
使用echo(file_get_contents())将首先将文件加载到内存中,然后回显将文件输出给用户--因此,在开始向用户传递文件之前会出现延迟,因此有可能达到PHP的内存限制。
相反,readfile()将在从远程源下载数据块后立即提供给用户,然后在接收到它们时将其丢弃。它将使用更少的内存和下载将更快开始。
header('Content-Type: application/zip');
readfile('http://test.com/test.zip');
发布于 2009-09-08 05:50:53
header("Content-Type: application/zip"); // correct? not sure.
echo(file_get_contents("http://test.com/test.zip"));
除非我错过了你想做的事..。如果要缓存它,可以分离调用,并将file_get_contents
的结果存储在某个地方。此调用的结果是文件作为字符串。echo
只是将它再次打印回浏览器。header
用于告诉浏览器这个文件实际上是一个zip文件,而不是一个html文件。
https://stackoverflow.com/questions/1392154
复制相似问题