我尝试使用 ZF 的下一个验证器:
$isImageValidator = new Zend_Validate_File_IsImage(array('headerCheck' => true));
(我不想使用 fileInfo 或 mimeMagic)
但即使选择了图像,验证器也会返回下一个:
文件“image.png”没有图像,检测到“application/octet-stream”
(当我查看 $_FILES 全局数组时,它检测到“image/png”)为什么???
请帮帮我...
最佳答案
我的产品服务器也有同样的问题。默认情况下,作为 isImage 基类的 Zend_Validate_File_MimeType 使用系统中定义 mime 类型的文件之一。
在我的例子中这个文件是/usr/share/file/magic.mime
我刚刚删除了 MimeType 中列出的所有文件:
protected $_magicFiles = array(
'/usr/share/misc/magic',
'/usr/share/misc/magic.mime',
'/usr/share/misc/magic.mgc',
'/usr/share/mime/magic',
'/usr/share/mime/magic.mime',
'/usr/share/mime/magic.mgc',
'/usr/share/file/magic',
'/usr/share/file/magic.mime',
'/usr/share/file/magic.mgc',
);
关于php - 验证器 Zend_Validate_File_IsImage 不能正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3462250/