thinkphp5 验证器使用

it2022-05-05  147

验证器基础使用

1.控制器代码

$data = Util::postMore([ 'shop_name', 'name', 'phone', ], $request); $validate = validate('admin/Shop'); //引用 if(!$validate->check($data)){ //验证数据 return JsonService::fail($validate->getError()); //提示错误 }else{//验证通过之后的逻辑 }

2.模型(路径在Admin/Shop)

namespace app\admin\validate; use think\Validate; class Shop extends Validate { protected $rule = [ [ 'shop_name' , 'require|max:25','店铺名称必须填写|店铺名称最多不能超过25个字符'], ['name', 'require|max:5','联系人必须填写|请正确填写联系人姓名'], ['phone', 'require|max:11|/^1[3-8]{1}[0-9]{9}$/','联系人手机号必须填写|请正确填写联系人手机号|请正确填写联系人手机号'], ]; }

tp5 控制器

public function register(){ $yzm=input('post.yzm'); $data["mobile"] = input('post.mobile'); $data["password"]=input('post.password'); $result = $this->validate($data,'Member'); dump($result); }

验证器

namespace api\job\validate; use think\Validate; class MemberValidate extends Validate { protected $rule = [ 'phone' => 'require|checkPhone:', 'password' => 'require|checkPassword:' ]; protected $message = [ 'phone.require' => '手机号不能为空', 'mobile.checkMobile' => '手机格式不对', ]; protected function checkMobile($value, $rule, $data) { return $result=check_mobile($value); } protected function checkPassword($value){ $result=check_password($value); if($result["code"]==200) return true; else return $result["msg"]; } }

最新回复(0)