企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
> ## 定义单独的验证器类(推荐) ``` // 1.定义一个验证器类(模块目录下面的validate目录) namespace app\index\validate; use think\Validate; class User extends Validate { protected $rule = [ 'name' => 'require|max:25', 'email' => 'email', ]; } // 2.控制器中这样验证 // 获取数据 $data = [ 'name'=>'thinkphp', 'email'=>'thinkphp@qq.com' ]; // 实例化验证器 $validate = Loader::validate('User'); // 可以使用助手函数简化该操作:$validate = validate('User'); // 验证数据 if(!$validate->check($data)){ dump($validate->getError()); } ``` > ## 控制器内临时定义 ``` 1.首先在控制器顶部引入验证类 \think\Validate 2.控制器的方法中进行如下定义 // 验证规则 $rule = [ 'name' => 'require|max:25', 'age' => 'number|between:1,120', 'email' => 'email', ]; // 错误提示信息 $msg = [ 'name.require' => '名称必须', 'name.max' => '名称最多不能超过25个字符', 'age.number' => '年龄必须是数字', 'age.between' => '年龄只能在1-120之间', 'email' => '邮箱格式错误', ]; // 表单数据 $data = [ 'name' => 'thinkphp', 'age' => 10, 'email' => 'thinkphp@qq.com', ]; // 实例化验证类 $validate = new Validate($rule, $msg); // 如果是简单验证,可以直接 /*$validate = new Validate([ 'name' => 'require|max:25', 'email' => 'email' ]); */ // 验证表单数据 if (!$validate->check($data)) { dump($validate->getError()); } // 批量验证 $validate = new Validate($rule, $msg); $result = $validate->batch()->check($data); // 验证失败返回的是错误信息的数组 ```