使用Laravel,我正在尝试创建一个可以从S3下载目录中所有文件的函数。
我曾经使用$file = Storage::disk('s3')->allFiles('path');
检索文件的所有密钥,但我不知道接下来该做什么。
好像我必须将所有文件下载到本地,然后压缩这些文件,然后下载该zip文件。我想知道是否有更好的方法。
任何建议或建议都将不胜感激。
答案 0 :(得分:1)
答案 1 :(得分:0)
使用HTTP协议在同一请求上无法同时发送多个文件。 Laravel也不支持这一点。您必须将文件打包在例如zip文件中。
安装Chumper/Zipper包并返回包含所有文件的zip:
$files = Storage::disk('s3')->allFiles('path');
Zipper::make(public_path('test.zip'))->add($files);
return response()->download(public_path('test.zip'));