如何在 Laravel 中获取文件输入名称?

How to get file input name in Laravel?

我正在使用 jQuery 表单生成器来创建任何类型的表单输入。我特别遇到的问题是,当我创建多个文件输入时,默认情况下输入名称是随机生成的,格式类似于“file-0000-0”。我想获取输入名称,但由于它是随机的,我只能想到一种获取名称的方法,即使用 allFiles() 方法。如何获取输入的名称?

代码示例

$fileRequest = $request->allFiles();

return $fileRequest;

它将return像这样:

{file-1649657296668-0: {…}, file-1649657297967-0: {…}}.

现在如何获取上面的两个文件输入名称? 感谢您的帮助。

因为 allFiles() returns 关联数组你可以获得键:

$files = $request->allFiles();
$name_of_files = array_keys($files);
// ["file-1649657296668-0", "file-1649657297967-0"]

或者您也可以遍历该数组并访问文件:

$files = $request->allFiles();
foreach($files as $name_of_file => $file)  {
  echo $name_of_file; // file-1649657296668-0
  // $file is UploadedFile instance
}