如何获取文件对象laravel

时间:2020-01-05 08:11:58

标签: php laravel laravel-5 laravel-blade laravel-6

我以这种形式发送文件

<input type="file" class="form-control" name="images[]" multiple enctype="multipart/form-data"/>

但是在$request->all()上的控制器中,我只有文件名

"images" => array:1 [▼
    0 => "just-before-hit.png"
  ]

如何获取文件对象进行存储?

4 个答案:

答案 0 :(得分:0)

您可以使用 $request->file('NAME') 或直接使用 $request->FILEINAME 获取文件对象。有关更多信息,请访问laravel官方文档here,这是您的示例。

$files = $request->file('images');
foreach($files as $file){
    // here is your file object
    dd($file->getClientOriginalName());
}

您需要将 enctype="multipart/form-data" 添加到表单中。否则,文件上传将无法正常工作。

答案 1 :(得分:0)

您可以使用此$request->file('Name of your input field')获取文件名及其属性。有关更多信息,请查看laravel文档。Documentation

$file = $request->file('Name of your input field');
$filename = $file->getClientOriginalName();
$extension = $file->getClientOriginalExtension();

答案 2 :(得分:0)

因此,答案是不仅要在输入中添加enctype="multipart/form-data",还要在<form enctype="multipart/form-data"></form>标签中添加

答案 3 :(得分:0)

如果有帮助

添加您的控制器:use Illuminate\Http\UploadedFile;