关于为a设置最大文件大小有几个主题*input type=file,但显然没有纯标准的HTML方法(HTML规范中没有).
那么,是否有任何纯HTML方法来设置最大文件大小input type="file"?
是否有对此类功能的请求,例如maxsize="..."让浏览器过滤掉用户可以选择的文件的属性,或者我们是否必须坚持使用Javascript File API多年(或曾经)?
*话题:
JS File API:限制文件上传的大小(html输入)或如何使用jQuery检查文件输入大小?
HTML永远不会看到任何标准:HTML上传MAX_FILE_SIZE似乎不起作用
在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());
}
}
}
Run Code Online (Sandbox Code Playgroud)
我不能使用只是if (!$file->isValid())因为文件字段是可选的,我得到一个Call to a member function isValid() on nullif字段是空的.
所以我必须检查字段是否存在使用if (request()->hasFile($field)),但这不适用于大文件,因为dd(request()->hasFile('picture'))返回false.
当然,我可以依赖默认的Laravel Validator消息,但是我得到一个The picture failed to upload.不给用户任何线索的假人.