Yii2图像尺寸验证

yr9zkbsy  于 2022-11-09  发布在  其他
关注(0)|答案(1)|浏览(190)

这个验证行不工作。我可以上传任何维度的图像。

['image', 'image', 'minWidth' => 250, 'maxWidth' => 250,'minHeight' => 250, 'maxHeight' => 250],

在控制器中,我使用。

$image = UploadedFile::getInstance($this, 'image');
uxhixvfz

uxhixvfz1#

据我所知,最后一行没有什么问题https://github.com/yiisoft/yii2/blob/master/docs/guide/tutorial-core-validators.md#yiivalidatorsimagevalidatorimage-
但是您为image属性声明了两次规则-一次作为文件,另一次作为图像。图像验证器从文件验证器扩展而来,因此它继承了文件验证器的所有属性。

图像验证程序(文档):

此验证器检查输入值是否表示有效的图像文件。它从文件验证器扩展,因此继承了它的所有属性。此外,它还支持以下特定于图像验证目的的附加属性:
尝试将其合并到一个规则中,看看是否有帮助。

[
     'image', 
     'image', 
     'minWidth' => 250, 
     'maxWidth' => 250,
     'minHeight' => 250, 
     'maxHeight' => 250, 
     'extensions' => 'jpg, gif, png', 
     'maxSize' => 1024 * 1024 * 2
],

**编辑:**您需要将图像保存在$model中,如$model->image,以便在控制器中通过模型验证规则进行验证。

下面是一个很好的例子:http://www.yiiframework.com/doc-2.0/guide-input-file-upload.html

相关问题