如何解决将laravel中的文件更新并下载为zip文件
我有 10 个用于上传文件的输入 我希望他们保存为 1 个文件 zip 并下载文件 zip
public function store(Request $request)
{
$clients = $request->all();
for($i=1 ; $i<10 ; $i++){
if ($request->hasFile('document'.$i)) {
$clients['document'.$i] = $request['document'.$i]->getClientOriginalName();
$request['document'.$i]->storeAs('documents'.'/'. $clients['phone'],$clients['document'.$i]);
}
}
Submite::create($clients);
return redirect()->route('submited.index');
}
public function download($id)
{
$clients = Submite::where('id',$id)->firstOrFail();
$pathToFile = storage_path('app/documents/'.$clients['phone']. '/' .$clients->document1);
return response()->download($pathToFile);
}
解决方法
首先,您最好使用 foreach
而不是 for
。
事情是这样的:
对于商店:
-
获取您的所有文件。
-
将它们转换为 Zip 文件。
-
将 Zip 文件存储在磁盘上。
-
将路径存储在数据库中。
下载:
- 只需获取文件路径并做出下载响应即可。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。