微前端架构如何改变企业的开发模式与效率提升
1633
2022-10-29
tp6 验证 validate 用法
例子:给后端用户定义一个专属的验证类 User
1.定义规则和提示文字 User.php代码
'require|chsAlphaNum|length:6,30', 'password' => 'require|length:6,30', 'verifyCode' => 'require|length:4', 'email' => 'email', 'tel' => 'mobile|number|length:11', ]; protected $message = [ 'username.require' => '用户名必须填写', 'username.chsAlphaNum' => '用户名长度范围6-30个字符', 'username.length' => '用户名只能是汉字、字母和数字', 'password.require' => '密码必须填写', 'password.length' => '密码必须6-30个字符', 'verifyCode.require' => '验证码必须填写', 'verifyCode.length' => '验证码必须5位', 'tel.mobile' => '填写有效的手机', 'tel.number' => '手机只能数字', 'tel.length' => '手机只能11位数字', 'email' => '邮箱格式错误', ]; }
2.控制器引用
要引用
use app\admin\validate\User; use think\exception\ValidateException;
2.1 使用方法一
$postjson=input('post.data/s');//接收所有数据 格式json try { if(empty($postjson)){ throw new \Exception("数组为空!"); } $postArr=json_decode($postjson, true);//把接收所有数据转为数组 //验证表单 validate(ManageValidate::class)->check($postArr); } catch (ValidateException $e) { return ['code'=>-200,'msg'=>$e->getError()]; } catch (\Exception $e) { // 这是进行异常捕获 return ['code'=>-200,'msg'=>$e->getMessage()]; }
2.2 使用方法二
check([ 'username' => $username, 'password' => $password, 'verifyCode' => $verifyCode, ]); if (request()->isAjax()){ $rs = Db::name('admin') ->field('username,password,realname,nickname,img,tel,email,department_id,department_id2,role_id,group_id,code_md5,enterprise_id') ->where($where) ->find(); }else{ throw new \Exception("非法提交"); } $code=200;$msg='成功'; } catch (ValidateException $e) { return ['code'=>-200,'msg'=>$e->getError()]; } catch (\Exception $e) { // 这是进行异常捕获 return ['code'=>-200,'msg'=>$e->getMessage()]; } return json(['code' => $code,'msg' =>$msg]); } }
其它例子:
官方文档:验证器 · ThinkPHP6.0完全开发手册 · 看云
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~