Zend文件上传不允许或不知道svg扩展名


Zend file upload does not allow or know svg extension

我想提供上传扩展名的图像的选项.svg以便它可以在应用程序中和应用程序内的pdf打印上扩展。我已经将表单中的验证器更改为此(甚至尝试区分大小写):

->addValidator('Extension', false, 'jpg,png,gif,jpeg,svg,SVG')

但是我得到"错误:未知文件格式"。

为什么会出现此错误,如何允许上传扩展名为.svg的文件?

您应该考虑使用 IsImage 验证:

$element->addValidator('IsImage', false);

这将验证所有图像格式,包括 SVG 格式。

http://framework.zend.com/manual/1.12/en/zend.file.transfer.validators.html#zend.file.transfer.validators.isimage


此验证器基于 MimeType 验证器,因此您也可以直接使用 MimeType 进行验证:

$element->addValidator('MimeType', false, 'image');

或特定类型:

$element->addValidator('MimeType', false, array('image/gif', 'image/jpeg');

http://framework.zend.com/manual/1.12/en/zend.file.transfer.validators.html#zend.file.transfer.validators.mimetype