MemberValidate.php 4.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | ThinkCMF [ WE CAN DO IT MORE SIMPLE ]
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2013-2018 http://www.thinkcmf.com All rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
  8. // +----------------------------------------------------------------------
  9. // | Author: 小夏 < 449134904@qq.com>
  10. // +----------------------------------------------------------------------
  11. namespace app\weixin\validate;
  12. use think\Validate;
  13. class MemberValidate extends Validate
  14. {
  15. protected $rule = [
  16. 'mobile' => 'require|mobile|length:11,20',
  17. 'code' => 'require|alphaNum|length:4,8',
  18. 'password' => 'require|pwd|length:4,20',
  19. 'realname' => 'require|chs',
  20. 'now_address' => 'require|length:2,100',
  21. 'home_address' => 'require|length:2,100',
  22. 'graduate' => 'length:2,30',
  23. 'company' => 'require|length:2,30',
  24. 'occupation' => 'require|length:2,30',
  25. 'eduacation' => 'integer|integer|length:1,5',
  26. 'nickname' => 'require',
  27. 'money' => 'require|float|length:1,14',
  28. 'weight' => 'require|integer|length:2,20',
  29. 'height' => 'require|integer|length:2,20',
  30. 'sex' => 'require|integer|length:1,3',
  31. 'account' => 'require|alphaNum|length:2,30',
  32. 'married' => 'require|integer|length:1,3',
  33. 'wechat_code' => 'require|length:2,30',
  34. 'idcard' => 'require|idcard',
  35. ];
  36. protected $message = [
  37. 'mobile.require' => '手机号码不为空',
  38. 'mobile.mobile' => '手机号码格式不正确',
  39. 'mobile.length' => '手机号码格式不正确',
  40. 'code.require' => '手机验证码不为空',
  41. 'code.alphaNum' => '手机验证码格式不正确',
  42. 'code.length' => '手机验证码格式不正确',
  43. 'password.require' => '登录密码不为空',
  44. 'password.pwd' => '登录密码格式不正确',
  45. 'password.length' => '登录密码格式不正确',
  46. 'now_address.require' => '请选择现居地址',
  47. 'now_address.*' => '现居地址格式不正确',
  48. 'home_address.require' => '请选择家乡地址',
  49. 'realname.require' => '姓名不为空',
  50. 'realname.chs' => '姓名格式不正确',
  51. 'nickname.require' => '请填写昵称',
  52. 'height.require' => '请填写身高信息',
  53. 'height.length' => '身高格式不正确',
  54. 'weight.require' => '请填写体重信息',
  55. 'weight.length' => '身高格式不正确',
  56. 'weight.integer' => '体重格式错误',
  57. 'sex.require' => '请选择性别',
  58. 'brithday.require' => '请选择出生日期',
  59. 'married.require' => '请选择婚姻状况',
  60. 'wechat_code.require' => '请填写微信号',
  61. 'idcard.require' => '请填写身份证号码',
  62. 'idcard.idcard' => '请填写正确格式的身份证号码',
  63. 'graduate.require' => '请填写毕业学校名称',
  64. 'eduacation.require' => '请选择您的学历',
  65. 'eduacation.length' => '学历长度为2-20位',
  66. 'company.require' => '请填写工作单位名称',
  67. 'company.length' => '工作单位名称长度为2-30位',
  68. 'occupation.require' => '请选择职业',
  69. 'wechat_code.length' => '微信号格式错误,建议2-30个字符',
  70. ];
  71. protected $regex = [
  72. 'mobile'=> '/^((13[0-9])|(14[5,7])|(15[0-9])|(16[6-8])|(17[0,1,2,3,5-8])|(18[0-9])|(19[1-9]))\\d{8}$/',
  73. 'pwd'=> '/^[0-9a-zA-Z][0-9a-zA-Z\_\!\@\#\$\%\^\&\*\(\)]{2,19}/',
  74. 'idcard'=> '/^[1-9]\d{5}(18|19|20|(3\d))\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/',
  75. ];
  76. protected $scene = [
  77. 'reg' => ['nickname','mobile','code','sex','brithday','height','weight','now_address','home_address','married','wechat_code'],
  78. 'marketReg' => ['nickname','mobile','code','now_address','wechat_code'],
  79. 'info' => ['nickname','sex','brithday','height','weight','company','now_address','home_address','married','wechat_code'],
  80. 'marketInfo' => ['nickname','sex','wechat_code'],
  81. 'login' => ['mobile','password'],
  82. 'forget' => ['mobile','code','password'],
  83. 'code' => ['mobile'],
  84. 'wechat' => ['wechat_code'],
  85. // 认证
  86. 'idcard' => ['realname','idcard'],
  87. 'education' => ['graduate','education'],
  88. 'position' => ['company','occupation'],
  89. ];
  90. }