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

时间:2014-12-03 18:59:50

标签: php image zend-framework svg

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

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

但我得到“错误:未知的文件格式”。

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

1 个答案:

答案 0 :(得分:1)

您应该考虑使用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