阅读(1254) (8)

Laravel 8 dimensions

2021-06-25 11:53:24 更新

验证的文件必须是图片并且图片比例必须符合规则:

'avatar' => 'dimensions:min_width=100,min_height=200'

可用的规则为: min_width, max_width, min_height, max_height, width, height, ratio.

ratio 约束应该表示为宽度除以高度。 这可以通过像 3/2 这样的语句或像 1.5 这样的 float 来指定::

'avatar' => 'dimensions:ratio=3/2' 

由于此规则需要多个参数,因此你可以 Rule::dimensions 方法来构造可读性高的规则:

use IlluminateValidationRule;

Validator::make($data, [
    'avatar' => [
        'required',
        Rule::dimensions()->maxWidth(1000)->maxHeight(500)->ratio(3 / 2),
    ],
]);