php – Laravel 5.3,检查上传文件是否大于upload_max_filesize(
发布时间:2020-12-14 19:46:19 所属栏目:大数据 来源:网络整理
导读:在Laravel 5.3中,我试图捕获上传文件的文件大小是否大于upload_max_filesize.上传字段不是必需的. 我尝试过这种方法,但它不起作用 public function checkFile($field){ if (request()-hasFile($field)){ // check if field is present $file = request()-fil
在Laravel 5.3中,我试图捕获上传文件的文件大小是否大于upload_max_filesize.上传字段不是必需的.
我尝试过这种方法,但它不起作用 public function checkFile($field) { if (request()->hasFile($field)){ // check if field is present $file = request()->file($field); if (!$file->isValid()){ // now check if it's valid return back()->with('error',$file->getErrorMessage()); } } } 我不能只使用if(!$file-> isValid()),因为文件字段是可选的,如果字段为空,我会在null上获得对成员函数isValid()的调用. 因此,我必须使用if(request() – > hasFile($field))检查字段是否存在,但这对大文件不起作用,因为dd(request() – > hasFile(‘picture’) )返回false. 当然我可以依赖默认的Laravel Validator消息,但是我得到了一个虚拟图片无法上传.这没有给用户任何线索.
仅当您上传的文件大小小于php.ini中设置的限制时,Laravel验证才有效.
如果您尝试上传大于限制的文件,PHP将不会将请求转发给Laravel,并且会立即出错.因此,Laravel在这种情况下无能为力. 解决此问题的一种方法是在php.ini中设置更大的限制,然后在Laravel中验证文件大小. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |