laravel验证程序无法验证图像的图像尺寸正确

时间:2019-11-02 04:43:41

标签: laravel laravel-5 laravel-validation

我正在尝试验证图像的宽度和高度。即使用户选择了正确分辨率的图像,也会出现错误。

控制器代码

$messages = [
    'productImages.dimensions' => "Profile image must be maximum 100x100 "
];
$this->validate($request,[
    'productName'           => 'required|max:40',
    'productDescription'    => 'required|max:1000',
    'productCondition'      => 'required',
    'productImages'         =>     'required|max:5|dimensions:max_width=100,max_height=100',
    'category'              => 'required'
],$messages);

我要在用户选择正确分辨率的图像时提交该图像。

1 个答案:

答案 0 :(得分:2)

基于productImages是复数的事实,并且您已经设置了max值,我猜测您正在传递图像数组,而不是单个图像。因此,您需要分别验证数组每个项目的尺寸。

$this->validate($request,[
    'productName'           => 'required|max:40',
    'productDescription'    => 'required|max:1000',
    'productCondition'      => 'required',
    'productImages'         => 'required|max:5',
    'productImages.*'       => 'dimensions:max_width=100,max_height=100',
    'category'              => 'required'
],$messages);