如何使用输入文件的数组名称请求文件?

时间:2015-06-11 02:02:30

标签: php html laravel

只是想知道为什么我无法从输入类型文件中获取数组名称的值。

HTML:

<input type="file" name="collateral_photo[]" id="collateral_photo" class="default"/>

此输入文件的名称是一个数组。

PHP Laravel

return Request::file('collateral_photo');

返回结果为[{}]

我现在想要的是如何从这个带有数组名称的输入文件中获取值。

拜托,请帮帮我。

非常感谢您的帮助。

3 个答案:

答案 0 :(得分:8)

使用下面的代码,因为name属性是一个数组

$files = Request::file('collateral_photo');
return $files[0];

或者如果你想要第二个文件

return $files[1];

//if you want to access second file and so on

您需要访问指定了数组索引的文件。

如果要返回整个文件数组本身,请使用

return $files

答案 1 :(得分:2)

如果它是文件数组,请执行以下操作:

$request()->file($fieldName)[$key]->getClientOriginalName();

答案 2 :(得分:1)

更进一步,我们可以使用多级数组,如下所示:

<input name="channel[1][file]" type="file">
<input name="channel[2][file]" type="file">

在laravel你需要一个结构

$files = $request->file('channel');
$file1 = $files[1]['file'];
$file2 = $files[2]['file'];