MemberValidator.php 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?php
  2. namespace App\Http\Validator;
  3. class MemberValidator extends BaseValidator
  4. {
  5. // 当前模型所有验证规则
  6. public static $rules = [
  7. 'id' => 'required',
  8. 'avatar' => 'required',
  9. 'nickname' => 'required',
  10. 'email' => 'required|email',
  11. 'code' => 'required',
  12. 'invite_code' => 'required',
  13. 'scene' => 'required',
  14. 'gender' => 'required',
  15. ];
  16. // 当前模型所有错误提示信息
  17. public static $msgs = [
  18. 'required' => ':attribute不能为空',
  19. 'string' => ':attribute必须是字符串',
  20. 'min' => ':attribute长度不能小于:min位',
  21. 'max' => ':attribute长度不能大于:max位',
  22. 'exists' => ':attribute不存在',
  23. 'rule' => ':attribute格式不正确',
  24. ];
  25. // 当前模型所有验证字段
  26. public static $fields = [
  27. 'id' => 'ID',
  28. 'avatar' => '头像',
  29. 'gender' => '性别',
  30. 'nickname' => '昵称',
  31. 'mobile' => '手机号',
  32. 'email' => '邮箱地址',
  33. 'invite_code' => '邀请码',
  34. 'scene' => '验证码类型',
  35. 'code' => '验证码',
  36. ];
  37. // 当前模型所有验证场景
  38. public static $scenes = [
  39. 'info'=> ['id'],
  40. 'save'=> ['mobile','nickname','gender'],
  41. 'sms'=> ['mobile','code'],
  42. 'email_login'=> ['email','code'],
  43. 'email_register'=> ['email','code'],
  44. 'email'=> ['email','scene'],
  45. ];
  46. /**
  47. * 验证
  48. * @param $request
  49. * @param string $scene
  50. * @return int|mixed
  51. */
  52. public static function check($request, $scene=''){
  53. $validator = new BaseValidator(self::$rules, self::$msgs, self::$fields, self::$scenes);
  54. return $validator->checkParams($request, $scene);
  55. }
  56. }