【发布时间】:2017-07-29 19:25:47
【问题描述】:
我有一个允许上传照片的 Laravel 项目,它们存储在 S3 存储桶中。
在特定时间,需要下载整个专辑,该专辑是 S3 存储桶中的一个文件夹。因此,应将其下载为包含该专辑照片的 ZIP 文件。
当这些存储在本地存储中时,我设法做到了这一点。
public function downloadZip() {
$files = glob(public_path('js/*'));
Zipper::make('mydir/mytest3.zip')->add($files);
return response()->download(public_path('mydir/mytest3.zip'));
}
但是,在 S3 存储桶中,该方法不起作用。
有没有办法做到这一点?
【问题讨论】:
-
你在本地存储上使用了什么方法?
-
@ceejayoz 我更新了问题:)
-
好的,是的,这行不通。您不能对 S3 存储桶使用
glob。没有一种非常简单的方法可以做你想做的事 - 你需要将文件下载到你的服务器并在那里压缩它们。请参阅stackoverflow.com/questions/16368119/… 了解原因和可能的方法。 -
@ceejayoz 谢谢!会检查的!!!! :)
标签: php laravel amazon-web-services amazon-s3