Yii2图像尺寸验证

Azr*_*ard 4 php image yii yii2 yii-cactiverecord

此验证行不起作用.我可以上传任何尺寸的图像.

['image', 'image', 'minWidth' => 250, 'maxWidth' => 250,'minHeight' => 250, 'maxHeight' => 250], 
Run Code Online (Sandbox Code Playgroud)

在控制器中,我使用.

 $image = UploadedFile::getInstance($this, 'image');
Run Code Online (Sandbox Code Playgroud)

Jør*_*gen 8

就我所见,最后一行没有任何问题. https://github.com/yiisoft/yii2/blob/master/docs/guide/tutorial-core-validators.md#yiivalidatorsimagevalidatorimage-

但是你要为image属性声明两次规则- 一个作为文件,一个作为图像.图像验证器从文件验证器扩展,因此它继承了它的所有属性.

图像验证器(docs):

此验证器检查输入值是否表示有效的图像文件.它从文件验证器扩展,因此继承了它的所有属性.此外,它还支持以下用于图像验证的附加属性:

尝试将其合并到一个规则中,看看是否有帮助.

[
     'image', 
     'image', 
     'minWidth' => 250, 
     'maxWidth' => 250,
     'minHeight' => 250, 
     'maxHeight' => 250, 
     'extensions' => 'jpg, gif, png', 
     'maxSize' => 1024 * 1024 * 2
],
Run Code Online (Sandbox Code Playgroud)

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

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