發表日期:2018-12 文章編輯:小燈 瀏覽次數:3288
如果你需要在控制器中進行驗證,并且繼承了\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 瀏覽次數:4977
日期:2018-12 瀏覽次數:5260
日期:2018-12 瀏覽次數:4340
日期:2018-12 瀏覽次數:3692
日期:2018-12 瀏覽次數:4093
日期:2018-12 瀏覽次數:3657
日期:2018-12 瀏覽次數:3700
日期:2018-12 瀏覽次數:6517
日期:2018-12 瀏覽次數:3471
日期:2018-12 瀏覽次數:3576
日期:2018-12 瀏覽次數:3702
日期:2018-12 瀏覽次數:4827
日期:2018-12 瀏覽次數:3212
日期:2018-12 瀏覽次數:3528
日期:2018-12 瀏覽次數:3330
日期:2018-12 瀏覽次數:3211
日期:2018-12 瀏覽次數:3584
日期:2018-12 瀏覽次數:3451
日期:2018-12 瀏覽次數:4549
日期:2018-12 瀏覽次數:3999
日期:2018-12 瀏覽次數:3511
日期:2018-12 瀏覽次數:4312
日期:2018-12 瀏覽次數:3294
日期:2018-12 瀏覽次數:3287
日期:2018-12 瀏覽次數:3242
日期:2018-12 瀏覽次數:3404
日期:2018-12 瀏覽次數:3687
日期:2018-12 瀏覽次數:3476
日期:2018-12 瀏覽次數:3408
日期:2018-12 瀏覽次數:3462
Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.