创建一个验证器,用来对模型中的字段进行验证处理

Original 2019-04-10 18:18:58 232
abstract:use think\Validateclass Students extends Validate{//验证规则protected $rule = [//先看看当前表哪些需要验证 'name' => 'require|min:5|manx:15' ,//require表示是必须的,第二个参数是5~15之间 'sex'=>'in:0

use think\Validate

class Students extends Validate

{

//验证规则

protected $rule = [//先看看当前表哪些需要验证

'name' => 'require|min:5|manx:15' ,//require表示是必须的,第二个参数是5~15之间

'sex'=>'in:0,1',

'age'=>'require|between:18,60',

'salary'=>'require|gt:1500'

];

//错误信息

protected $message = [

'name.require' => '员工姓名不能为空',

'name.length'=>'员工姓名长度不正确',

}


//在控制器中调用验证器

class Verify extends Controller{

//验证器

public function demo1()

{

$data = [ ];

$validate = new Staff();//包含验证器的那个类

if(!$validate->check($data)){

dump($validate->getError() );

}else{ return '验证通过';}

}


//验证器的简化:$this->validate($data,$rule,$mess)

//可以使用控制器中的validate函数来完成

public function demo2()

{

 $data = [ ];

$rule = 'app\validate\Staff;

$res = $this->validate($data,$rule);


if(true !== $res){

return $res;}

return "验证成功";

}


//$this->validate函数的调用再举一个例子——这个时候绕过了验证器

$data = [];

$rule = [];

$mess = [];

$res = $this->validate($data,$rule,$mess)


Correcting teacher:天蓬老师Correction time:2019-04-11 09:07:24
Teacher's summary:其实通过控制器中的快捷方法进行验证, 并没有绕过验证器, 底层还是调用了这个家伙

Release Notes

Popular Entries