User.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. namespace app\api\validate;
  3. use think\Validate;
  4. class User extends Validate
  5. {
  6. protected $failException = true;
  7. protected $rule = [
  8. 'username' => 'require|regex:^[a-zA-Z][a-zA-Z0-9_]{2,15}$|unique:user',
  9. 'email' => 'email|unique:user',
  10. 'mobile' => 'mobile|unique:user',
  11. 'password' => 'require|regex:^(?!.*[&<>"\'\n\r]).{6,32}$',
  12. 'captcha' => 'require',
  13. 'captchaId' => 'require',
  14. ];
  15. /**
  16. * 验证场景
  17. */
  18. protected $scene = [
  19. 'login' => ['password', 'captcha', 'captchaId'],
  20. 'register' => ['email', 'username', 'password', 'mobile', 'captcha'],
  21. ];
  22. public function __construct()
  23. {
  24. $this->field = [
  25. 'username' => __('username'),
  26. 'email' => __('email'),
  27. 'mobile' => __('mobile'),
  28. 'password' => __('password'),
  29. 'captcha' => __('captcha'),
  30. 'captchaId' => __('captchaId'),
  31. ];
  32. $this->message = array_merge($this->message, [
  33. 'username.regex' => __('Please input correct username'),
  34. 'password.regex' => __('Please input correct password')
  35. ]);
  36. parent::__construct();
  37. }
  38. }