批改状态:未批改
老师批语:
<?php
namespace app\validate;
use think\validate;
class Staff extends Validate
{
protected $rule=[
'name'=>'require|min:5|max:19',
'sex'=>'in:0,1',
'age'=>'require|between:18,60',
'salary'=>'require|gt:2000'
];
protected $message=[
'name.require'=>'员工姓名不能为空',
'name.min'=>'员工姓名不得少于5个字符',
'name.max'=>'员工姓名不得大于19个字符',
'sex.in'=>'请选择男或者女',
'age.require'=>'员工年龄不能为空',
'age.between'=>'员工年龄必须在18-60周岁之间',
'salary.require'=>'员工工资不能为空',
'salary.gt'=>'员工工资不得低于2000元'
];
}
?>点击 "运行实例" 按钮查看在线实例
<?php
namespace app\index\controller;
use think\Controller;
use app\validate\Staff;
use think\Validate;
class Verify extends Controller
{
//实例化验证
public function example1(){
$data=[
'name'=>'杰洛特',
'sex'=>0,
'age'=>62,
'salary'=>16000
];
$validate =new Staff();
if(!$validate->check($data)){
dump($validate->getError());
}else{
return '验证通过';
}
}
public function example2(){
//验证器: 使用控制器内容的验证对象来完成验证: $this->validate($data, $rule)
// $data =[
// 'name'=>'卡尔',
// 'sex'=>1,
// 'age'=>66,
// 'salary'=>1606060
// ];
$rule='app\validate\Staff';
$rule=[ 'age'=>'between:18,68'];
$message =['age.between'=>'年龄必须在18~68岁之间'];
$data=['age'=>66];
$res =$this->validate($data,$rule,$message);
if(true!==$res){
return $res;
} return '验证成功';
}
//独立验证
public function example3(){
//主要是通过Validate::make()和check()进行验证
//make($rule,$mess):创建验证规则与错误信息
//check($data)完成数据验证
$rule =[
'age' =>'require|between:1,60'
];
$mes =[
'age.require' => '年龄必须填写',
'age.between' => '年龄必须在20到60之间'
];
$data =['age'=> 61];
$validate = Validate::make($rule,$mes);
$res =$validate->check($data);
return $res ?'验证通过':$validate->getError();
}
}
?>点击 "运行实例" 按钮查看在线实例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号