ThinkPHP中验证层的封装方法

1.创建基础验证类BaseValidate.php

说明:这里主要的目的是将原来在控制器中的验证代码,抽象成一个BaseValidate类,用于放置这些代码,同时形成gocheck方法,方便在后期调用

<?phpnamespace app\validate;use think\Validate;use app\BaseException;class BaseValidate extends Validate{ public function goCheck(){ $params = request()->param(); if(!$this->check($params)){ throw (new BaseException(['msg'=>$this->getError(),'errorCode'=>10000,'code'=>400])); } return true; }}2.在UserValidate中集成BaseValidate

这样在实例化UserValidate类时,具有了gocheck方法功能。

...class UserValidate extends BaseValidate...


3.在控制器中引入UserValidate类并实例化调用gocheck方法........use app\validate\UserValidate;class Index extends BaseController{ public function index() { (new UserValidate())->goCheck(); }}........