文件上传表单的 Zend 验证器大小 - Zend Framework 2.3
Posted
技术标签:
【中文标题】文件上传表单的 Zend 验证器大小 - Zend Framework 2.3【英文标题】:Zend Validator Size for File Uploading Form - Zend Framework 2.3 【发布时间】:2015-03-17 19:24:19 【问题描述】:我对 Zend\Validator\File\Size 有疑问;
我有一个文件输入上传器,我已将其验证器设置为:
$fileInput->getValidatorChain()
->attach(new Validator\File\Size(array('min' => '10kB', 'max' => '4MB')))
->attach(new Validator\File\UploadFile())
->attach(new Validator\File\isImage());
因此,此代码运行良好,但 Validator\Size 无法正常运行。如果我尝试上传的文件在 4mb 到 8mb 之间正常工作并且显示“文件超出定义的 ini 大小”,当我尝试上传大于 8mb 的文件时,它会显示此错误:
Warning: POST Content-Length of 9469269 bytes exceeds the limit of 8388608 bytes in Unknown on line 0
我的 php.ini
upload_max_filesize=8M post_max_size=8M
我想显示验证错误“文件超出定义的 ini 大小”,而且文件的大小大于 8Mb。我不明白,因为没有发生!
【问题讨论】:
【参考方案1】:如果您想处理 8M 作为最大限制,您的 upload_max_filesize
和 post_max_size
应该大于 8M,否则您将收到这些警告。
如果您对这些警告感到恼火,这是一种避免它们的方法: How to prevent Warning: POST Content-Length and memory size
【讨论】:
我想上传一些图片,但每张图片必须小于 4Mb,这就是我将最大大小限制设置为 4Mb 的原因。 正如我所解释的,您需要使最大限制高于 4M,下载图像检查大小返回错误消息并删除图像以防大于 4M,另一个选项是摆脱那些警告。以上是关于文件上传表单的 Zend 验证器大小 - Zend Framework 2.3的主要内容,如果未能解决你的问题,请参考以下文章