Laravel 获取文件名称

2022-08-30 12:21:45

我基本上只想得到一个文件的名称,我得到的是这样的:

$inputPdf = $request->file('input_pdf');

如果我打印我.dd($inputPdf)null


答案 1
  1. 要获取文件名,如文档中所述:

您可以使用 file 方法访问 Illuminate\Http\Request 实例中包含的已上载文件。file 方法返回的对象是 Symfony\Component\HttpFoundation\File\UploadFile 类的一个实例,它扩展了 PHP SplFileInfo 类,并提供了多种与文件交互的方法

上传文件实例上还有多种其他方法可用。有关这些方法的详细信息,请查看该类的 API 文档

因此,您可以使用此方法:getClientOriginalName()

http://api.symfony.com/3.0/Symfony/Component/HttpFoundation/File/UploadedFile.html#method_getClientOriginalName

$request->file('input_pdf')->getClientOriginalName();

将返回文件名。

您可以执行此操作以在调用文件上的任何方法之前检查该文件是否存在:

if ($request->hasFile('input_pdf')) {
    return $request->file('input_pdf')->getClientOriginalName();
} else {
    return 'no file!'
}
  1. 要解决返回支票的问题,您使用的是文件的正确名称。您可以尝试,看看其中是否有任何文件。您可以在查看对象的转储时检查文件名。dd($request->file('input_pdf'))nulldd($request)Request

答案 2
$request->file->getClientOriginalName();

有关更多方法,请查看此内容。


推荐