讨论数量:
写过一个,你看下你能用不。
自定义验证规则:
// 非空不重复数组验证 non_empty_array
Validator::extend('non_empty_array', function ($attribute, $value, $parameters) {
// 去空 去重 取前 n 个
$array = array_slice(array_unique(array_filter($value)), 0, $parameters[1]);
return count($array) >= $parameters[0];
});
自定义验证信息:
// 语言包新增
'non_empty_array' => ':attribute 必须包含 :min - :max 个非空且不重复的值。',
// 非空不重复数组验证 non_empty_array
Validator::replacer('non_empty_array', function ($message, $attribute, $rule, $parameters) {
return str_replace([':min', ':max'], $parameters, $message);
});
使用方法:
// 验证器
$validator = Validator::make($request->all(), [
'something' => 'required|array|non_empty_array:1,5',
]);
推荐文章: