问答 / 0 / 3 / 创建于 6年前
laravel 表单验证问题
假设有10个输入框,想要的规则是:
“不全为空”、“不能相同”,请大家指点一下思路就好,多谢!
这种还是老实判断下?
输入框使用数组组装数据 然在使用自定义验证方式进行处理,比如 params=[1,2,10,10,10......]
写过一个,你看下你能用不。 自定义验证规则:
// 非空不重复数组验证 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', ]);
我要举报该,理由是:
这种还是老实判断下?
输入框使用数组组装数据 然在使用自定义验证方式进行处理,比如 params=[1,2,10,10,10......]
写过一个,你看下你能用不。
自定义验证规则:
自定义验证信息:
使用方法: