'require|alphaNum|unique:user|length:3,16', 'password|原始密码' => 'require', 'newPassword|新密码' => 'require|alphaNum|length:6,16|different:password', 'phone|手机号' => 'require|checkPhone', 'name|姓名' => 'require', 'company_id' => 'require|egt:0', ]; protected $message = [ 'account.unique' => '账号已被占用', 'account.length' => '账号长度必须在3-16之间', 'newPassword.length' => '新密码长度必须在6-16之间', 'newPassword.different' => '新密码与原密码不能一样', 'company_id.require' => '未选择公司' ]; protected $scene = [ 'account' => ['account'], 'modifypass' => ['password','newPassword'], 'add' => ['phone','name','company_id'] ]; // 自定义验证规则 protected function checkPhone($value,$rule,$data=[]) { if(!check_mobile($value)){ return '手机号格式不正确'; } $info = Db::name('user')->where('phone',$data['phone'])->where('del',0)->find(); if($data['id'] <= 0 && $info){ return '手机号已被使用'; } if($info && $data['id'] > 0 && $info['id'] != $data['id']){ return '手机号已被使用'; } return true; } }