问题描述:
在Laravel5.5版本,调用方法getClientSize()获取上传文件大小
$img = $request->file('file');
// 校验文件大小是否符合设置阈值(2m)
if (1024*1024*2 < $img->getClientSize()) {
return false;
}
然而使用Laravel8.4.0版本时,发现上传接口报错:
Method Illuminate\Http\UploadedFile::getClientSize does not exist.
原因:
查看两个版本的Illuminate\Http\UploadedFile,发现larave8.4.0中不存在此方法。
解决:
通过继承关系找到SqlFileInfo类文件,里边定义了getSize()方法,通过调用即可获得上传文件大小
$img = $request->file('file');
// 校验文件大小是否符合设置阈值(2m)
if (1024*1024*2 < $img->getSize()) {
return false;
}