发表日期:2018-12 文章编辑:小灯 浏览次数:3220
如果你需要在控制器中进行验证,并且继承了\think\Controller
的话,可以调用控制器类提供的validate
方法进行验证,如下:
$result = $this->validate(['name'=> 'thinkphp','email' => 'thinkphp@qq.com',],['name'=> 'require|max:25','email' => 'email',]);if(true !== $result){// 验证失败 输出错误信息dump($result);}
如果定义了验证器类的话,例如:
namespace app\index\validate;use think\Validate;class User extends Validate{protected $rule = ['name'=>'require|max:25','email' =>'email',];protected $message = ['name.require'=>'用户名必须','email' =>'邮箱格式错误',];protected $scene = ['add' =>['name','email'],'edit'=>['email'],];}
控制器中的验证代码可以简化为:
$result = $this->validate($data,'User');if(true !== $result){// 验证失败 输出错误信息dump($result);}
如果要使用场景,可以使用:
$result = $this->validate($data,'User.edit');if(true !== $result){// 验证失败 输出错误信息dump($result);}
在validate方法中还支持做一些前置的操作回调,使用方式如下:
$result = $this->validate($data,'User.edit',[],[$this,'some']);if(true !== $result){// 验证失败 输出错误信息dump($result);}
日期:2018-12 浏览次数:4921
日期:2018-12 浏览次数:5202
日期:2018-12 浏览次数:4280
日期:2018-12 浏览次数:3639
日期:2018-12 浏览次数:4023
日期:2018-12 浏览次数:3598
日期:2018-12 浏览次数:3643
日期:2018-12 浏览次数:6468
日期:2018-12 浏览次数:3407
日期:2018-12 浏览次数:3517
日期:2018-12 浏览次数:3635
日期:2018-12 浏览次数:4762
日期:2018-12 浏览次数:3150
日期:2018-12 浏览次数:3469
日期:2018-12 浏览次数:3279
日期:2018-12 浏览次数:3153
日期:2018-12 浏览次数:3532
日期:2018-12 浏览次数:3396
日期:2018-12 浏览次数:4485
日期:2018-12 浏览次数:3946
日期:2018-12 浏览次数:3462
日期:2018-12 浏览次数:4237
日期:2018-12 浏览次数:3239
日期:2018-12 浏览次数:3220
日期:2018-12 浏览次数:3184
日期:2018-12 浏览次数:3334
日期:2018-12 浏览次数:3627
日期:2018-12 浏览次数:3419
日期:2018-12 浏览次数:3357
日期:2018-12 浏览次数:3413
Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.