我无法在文件上传期间检索originalName。
print_r($ request-> file)返回以下内容:
Symfony\Component\HttpFoundation\FileBag Object
(
[parameters:protected] => Array
(
[form_name] => Array
(
[backgroundImageFile] => Symfony\Component\HttpFoundation\File\UploadedFile Object
(
[test:Symfony\Component\HttpFoundation\File\UploadedFile:private] =>
[originalName:Symfony\Component\HttpFoundation\File\UploadedFile:private] => bg_image.jpg
[mimeType:Symfony\Component\HttpFoundation\File\UploadedFile:private] => image/jpeg
[size:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 65045
[error:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 0
[pathName:SplFileInfo:private] => /tmp/phpsU3X7a
[fileName:SplFileInfo:private] => phpsU3X7a
)
)
)
)
echo "<br /> Name= ".$this->getRequest()->files['backgroundImageFile']->getClientOriginalName();
返回:
致命错误:在a上调用成员函数getClientOriginalName() 控制器的../path中的非对象
那么,我如何获得OriginalName?
答案 0 :(得分:2)
尝试在FileBag上使用get()方法,而不是数组访问。
如,
$this->getRequest()->files->get("backgroundImageFile")->getClientOriginalName();
或者,如果在您的方案中有意义,请使用表单上传,然后以表单数据的形式访问上传的文件。