| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- <?php
- declare (strict_types = 1);
- namespace app\validate;
- use think\Validate;
- /**
- * 用户验证器
- */
- class UserValidate extends Validate
- {
- // 定义验证规则
- protected $rule = [
- 'username' => 'require|regex:/^[A-Za-z][A-Za-z0-9]{5,19}$/', // 必须|字母开头,且只包含字母数字,长度6-20
- 'nickname' => 'require|chsDash|length:2,20', // 汉字、字母、数字和下划线_及破折号-|长度6-20
- 'password' => 'require|regex:/^[A-Za-z0-9_+@%$]{6,20}$/', // 必须,以字母开头,长度6-20
- 'user_role' => 'integer|egt:0',
- 'merchant_id' => 'require|integer|gt:0',
- ];
- // 定义错误消息
- protected $message = [
- 'user_name.require' => '用户名不能为空',
- 'user_name.regex' => '用户名只能包含字母或数字,以字母开头,长度在6到20个字符之间',
- 'user_name.unique' => '用户名已存在',
- 'password.require' => '密码不能为空',
- 'password.regex' => '密码只能包含字母、数字及特殊字符(_+@%), 长度在6-20个字符之间',
- 'nickname.require' => '昵称不能为空',
- 'nickname.chsDash' => '昵称只能包含汉字、字母及数字,长度在2-20个字符之间',
- 'user_role.integer' => '角色ID必须是整数',
- 'user_role.egt' => '角色ID必须大于等于0',
- 'merchant_id.require' => '商户ID不能为空',
- 'merchant_id.integer' => '商户ID必须是整数',
- 'merchant_id.gt' => '商户ID必须大于0',
- ];
-
- // 定义验证场景
- protected $scene = [
- 'login' => ['user_name', 'password'],
- 'create' => ['user_name', 'password', 'nick_name', 'user_role', 'merchant_id'],
- 'update' => ['nick_name', 'user_role'],
- ];
- }
|