User.php 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <?php
  2. namespace addons\shopro\validate\user;
  3. use think\Validate;
  4. class User extends Validate
  5. {
  6. protected $regex = [
  7. 'password' => '/^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]+\S{5,12}$/',
  8. 'notPureNumber' => '^[a-zA-Z][a-zA-Z0-9_]{4,15}$',
  9. 'mobile' => '/^1[3456789]\d{9}$/',
  10. ];
  11. protected $rule = [
  12. 'account' => 'require',
  13. 'username' => 'require|alphaDash|length:5,12|unique:user|regex:notPureNumber',
  14. 'nickname' => 'require|length:2,20',
  15. 'mobile' => 'require|regex:mobile',
  16. 'password' => 'require|length:6,16|regex:password',
  17. 'oldPassword' => 'require',
  18. 'newPassword' => 'require|length:6,16|regex:password',
  19. 'avatar' => 'require',
  20. 'email' => 'email|unique:user',
  21. 'code' => 'require',
  22. ];
  23. protected $message = [
  24. 'account.require' => '账号必须填写',
  25. 'username.require' => '用户名必须填写',
  26. 'username.alphaDash' => '用户名只能包含字母,数字,_和-',
  27. 'username.length' => '用户名长度必须在 5-12 位',
  28. 'username.unique' => '用户名已被占用',
  29. 'username.regex' => '用户名需以字母开头',
  30. 'nickname.require' => '昵称必须填写',
  31. 'nickname.chsDash' => '昵称只能包含汉字,字母,数字,_和-',
  32. 'nickname.length' => '昵称长度必须在 2-10 位',
  33. 'mobile.require' => '手机号必须填写',
  34. 'mobile.regex' => '手机号格式不正确',
  35. 'mobile.unique' => '手机号已被占用',
  36. 'password.require' => '请填写密码',
  37. 'password.length' => '密码长度必须在 6-16 位',
  38. 'password.regex' => '密码必须包含字母和数字',
  39. 'oldPassword.require' => '请填写旧密码',
  40. 'newPassword.require' => '请填写新密码',
  41. 'newPassword.length' => '密码长度必须在 6-16 位',
  42. 'newPassword.regex' => '密码必须包含字母和数字',
  43. 'avatar.require' => '头像必须上传',
  44. 'email.email' => '邮箱格式不正确',
  45. 'email.unique' => '邮箱已被占用',
  46. 'code.require' => '请填写验证码',
  47. ];
  48. protected $scene = [
  49. 'accountLogin' => ['account', 'password'],
  50. 'smsLogin' => ['mobile', 'code'],
  51. 'smsRegister' => ['mobile' => 'require|regex:mobile|unique:user', 'code', 'password'],
  52. 'changePassword' => ['oldPassword', 'newPassword'],
  53. 'resetPassword' => ['mobile', 'code', 'password'],
  54. 'changeemail' => ['email', 'code'],
  55. 'changeMobile' => ['mobile' => 'require|regex:mobile|unique:user', 'code'],
  56. 'changeUsername' => ['username'],
  57. 'updateMpUserInfo' => ['avatar', 'nickname'],
  58. ];
  59. }