我有的
我在 Laravel 6 中创建了一个非常简单的多图上传器。视图和控制器的代码如下:
看法:
<form action="{{ route('create') }}" method="POST" enctype="multipart/form-data">
@csrf
<input name="images[]" type="file" multiple="multiple" />
</form>
控制器:
function create(Request $request) {
$this->validate($request, [
'images.*' => 'image',
]);
foreach($request->images as $image) {
// $filename = 'IMG_1921.jpg'
$filename = $image->getClientOriginalName();
// $path = 'uploads/IMG_1921.jpg'
$path = $image->storeAs('uploads', $filename);
// $absolutePath = 'C:\htdocs\laravel-test\storage/uploads/IMG_1921.jpg'
$absolutePath = sprintf('%s/%s', storage_path(), $path);
// crash here
// $data = getimagesize($absolutePath);
}
return 'ok';
}
问题
一切正常,直到我取消注释该getimagesize($absolutePath)
函数的行。我也尝试过,filesize($absolutePath)
并给出了同样的错误:
传递给 Facade\FlareClient\Context\RequestContext::Facade\FlareClient\Context{closure}() 的参数 1 必须是 Symfony\Component\HttpFoundation\File\UploadedFile 的实例,给定数组
getimagesize()
如果不使用任何UploadedFile
对象,我不明白为什么会显示此错误。
有关错误的更多信息: