1.UserValidate.php验证器
<?php
namespace app\admin\validate;
use think\Validate;
class UserValidate extends Validate{
protected $rule = [
'username'=>'require',
'password'=>'require',
'admin'=>'require|number',
'status'=>'require|number',
'id'=>'require|number',
'head_url'=>'require|validateImg'
];
protected $message = [
'username.require'=>'用户名不能为空',
'password.require'=>'密码不能为空',
'admin.require'=>'admin不能为空',
'admin.number'=>'admin必须为数字',
'status.require'=>'status不能为空',
'status.number'=>'status必须为数字',
'head_url.require'=>'轮播图片必须上传',
'id.require'=>'非法操作',
'id.number'=>'非法操作',
];
protected $scene = [
'insert' => ['username','password','admin','status','head_url'],
'edit'=> ['username','admin','status','head_url','id'],
];
// 自定义图片验证
protected function validateImg($img)
{
if (!in_array(pathinfo($img,PATHINFO_EXTENSION), ['jpeg','jpg','png'])) {
return '请上传jpeg、jpg、png格式的图片';
}
return true;
}
}
?>
2.验证器的使用
$validate = validate('UserValidate');
if(!$validate->scene('insert')->check($data)){
$this->error($validate->getError());
}else{
}