abstract:namespace app\index\controller; use think\Controller; use app\validate\User; use think\Validate;//导入验证器 class Verify extends Controller { public fu
namespace app\index\controller; use think\Controller; use app\validate\User; use think\Validate;//导入验证器 class Verify extends Controller { public function demo1(){ $data=[ 'username'=>'', 'age'=>'', ]; $validate=new User(); if(!$validate->check($data)){ echo $validate->getError(); }else{ return'验证通过'; } } public function demo2(){ $data=[ 'username'=>'shanwei', 'age'=>'29' ]; $rule='app\validate\User'; $res=$this->validate($data,$rule); if(true !==$res){ echo $res; die; } return '验证成功'; } //独立验证 public function demo3(){ //第一,先创建验证规则 $rule=['age'=>'require|between:18,60']; //第二创建提示信息 $mss=['age.require'=>'年龄必须填写','age.between'=>'请填写正确的年龄']; //第三创建数据 $data=['age'=>'']; $validate=Validate::make($rule,$mss); $res=$validate->check($data); if(!$res) { echo $validate->getError(); }else{ echo'验证成功'; } } }
验证文件:
<?php namespace app\validate; use think\Validate; class User extends Validate{ protected $rule=[ 'username'=>'require|length:6,15', 'age'=>'in:0,1', 'age'=>'require|between:18,60', 'salary'=>'require|gt:1500' ]; protected $message=[ 'username.require' => '名称必须填写', 'name.max' => '名称最多不能超过25个字符', 'age.number' => '年龄必须是数字', 'age.between' => '年龄必须在1~120之间', 'email' => '邮箱格式错误', ]; }
Correcting teacher:天蓬老师Correction time:2019-03-06 13:09:33
Teacher's summary:很好, 验证有多种方式,最简单就是直接使用控制器内置的快捷方式,但只限于当前方法用, 如果想全站用,最好独立验证