使用Laravel

时间:2017-07-28 18:09:52

标签: php laravel amazon-web-services amazon-s3

我有一个允许上传照片的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存储桶中,该方法无效。

有办法做到这一点吗?

2 个答案:

答案 0 :(得分:0)

您可以尝试使用Amazone服务功能Async transfers。这将帮助您获取s3文件,之后您可以使用Zipper逻辑压缩文件。

答案 1 :(得分:-1)

AWS为不同的平台(如Java / PHP等)公开SDK,以便与不同的AWS服务进行交互。

您需要访问https://aws.amazon.com/sdk-for-php/以获取PHP代码以从s3

复制文件