發(fā)表日期:2018-12 文章編輯:小燈 瀏覽次數(shù):3097
如果你需要在控制器中進(jìn)行驗(yàn)證,并且繼承了\think\Controller
的話,可以調(diào)用控制器類提供的validate
方法進(jìn)行驗(yàn)證,如下:
$result = $this->validate(['name'=> 'thinkphp','email' => 'thinkphp@qq.com',],['name'=> 'require|max:25','email' => 'email',]);if(true !== $result){// 驗(yàn)證失敗 輸出錯誤信息dump($result);}
如果定義了驗(yàn)證器類的話,例如:
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'],];}
控制器中的驗(yàn)證代碼可以簡化為:
$result = $this->validate($data,'User');if(true !== $result){// 驗(yàn)證失敗 輸出錯誤信息dump($result);}
如果要使用場景,可以使用:
$result = $this->validate($data,'User.edit');if(true !== $result){// 驗(yàn)證失敗 輸出錯誤信息dump($result);}
在validate方法中還支持做一些前置的操作回調(diào),使用方式如下:
$result = $this->validate($data,'User.edit',[],[$this,'some']);if(true !== $result){// 驗(yàn)證失敗 輸出錯誤信息dump($result);}
日期:2018-12 瀏覽次數(shù):4806
日期:2018-12 瀏覽次數(shù):5068
日期:2018-12 瀏覽次數(shù):4156
日期:2018-12 瀏覽次數(shù):3516
日期:2018-12 瀏覽次數(shù):3897
日期:2018-12 瀏覽次數(shù):3472
日期:2018-12 瀏覽次數(shù):3518
日期:2018-12 瀏覽次數(shù):6330
日期:2018-12 瀏覽次數(shù):3298
日期:2018-12 瀏覽次數(shù):3403
日期:2018-12 瀏覽次數(shù):3512
日期:2018-12 瀏覽次數(shù):4634
日期:2018-12 瀏覽次數(shù):3038
日期:2018-12 瀏覽次數(shù):3346
日期:2018-12 瀏覽次數(shù):3153
日期:2018-12 瀏覽次數(shù):3014
日期:2018-12 瀏覽次數(shù):3407
日期:2018-12 瀏覽次數(shù):3269
日期:2018-12 瀏覽次數(shù):4356
日期:2018-12 瀏覽次數(shù):3835
日期:2018-12 瀏覽次數(shù):3341
日期:2018-12 瀏覽次數(shù):4091
日期:2018-12 瀏覽次數(shù):3126
日期:2018-12 瀏覽次數(shù):3097
日期:2018-12 瀏覽次數(shù):3080
日期:2018-12 瀏覽次數(shù):3211
日期:2018-12 瀏覽次數(shù):3510
日期:2018-12 瀏覽次數(shù):3303
日期:2018-12 瀏覽次數(shù):3244
日期:2018-12 瀏覽次數(shù):3296
Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.