摘要://創(chuàng)建驗(yàn)證器User.php<?php namespace app\validate; use think\Validate;
//創(chuàng)建驗(yàn)證器User.php
<?php
namespace app\validate;
use think\Validate;
class User extends Validate{
protected $rule = [
'name' => 'require|length:4,15',
'sex' => 'in:0,1',
'age' => 'require|between:18,60',
'salary' => 'require|gt:1500'
];
protected $message = [
'name.require' => '名字不能為空',
'name.length' => '名字長(zhǎng)度為4至15個(gè)字符之間',
'sex.in' => '姓別必需是男或女',
'age.require' => '年齡不能為空',
'age.between' => '年齡必須是18至60歲之間',
'salary.require' => '工資不能為空',
'salary.gt' => '工資不能小于1500'
];
}
<?php
namespace app\index\controller;
use think\Controller;
//加載驗(yàn)證類
use app\validate\User;
class Varify extends Controller{
public function insert(){
//驗(yàn)證的數(shù)據(jù)
$data = [
'name' => 'whyan',
'sex' => 5,
'age' =>35,
'salary' => 1000
];
//new驗(yàn)證實(shí)例
$user = new User;
if(!$user->check($data)) {
echo $user->getError();
}else{
echo '驗(yàn)證通過(guò)';
}
}
//驗(yàn)證器驗(yàn)證
public function insert(){
//驗(yàn)證的數(shù)據(jù)
$data = [
'name' => 'whyan',
'sex' => 5,
'age' =>35,
'salary' => 1000
];
//驗(yàn)證的規(guī)則
$rule = 'app\validate\User';
$res = $this->validate($data,$rule);
dump($res);
}
//獨(dú)立驗(yàn)證
public function varify(){
//驗(yàn)證的數(shù)據(jù)
$data = [
'name' => 'whyan',
'sex' => 0,
'age' =>17,
'salary' => 1000
];
//驗(yàn)證的規(guī)則
$rule = [
'name' => 'require|length:4,15',
'sex' => 'in:0,1',
'age' => 'require|between:18,60',
'salary' => 'require|gt:1500'
];
//驗(yàn)證的信息
$message = [
'name.require' => '名字不能為空',
'name.length' => '名字長(zhǎng)度為4至15個(gè)字符之間',
'sex.in' => '姓別必需是男或女',
'age.require' => '年齡不能為空',
'age.between' => '年齡必須是18至60歲之間',
'salary.require' => '工資不能為空',
'salary.gt' => '工資不能小于1500'
];
//Validate靜態(tài)驗(yàn)證
$res = \think\Validate::make($rule,$message);
$res->check($data);
dump($res->getError());
}
}
批改老師:天蓬老師批改時(shí)間:2019-11-01 14:40:45
老師總結(jié):實(shí)際上,控制器中的驗(yàn)證, 也是引用了獨(dú)立驗(yàn)證, 通過(guò)一個(gè)獨(dú)之類, 對(duì)一些公用數(shù)據(jù)進(jìn)行驗(yàn)證,可以提高效率