TP5实战开发---验证器篇

发布于:2020-02-26 13:20:38

TP5实战开发---验证器篇

验证器 没有什么好说的 按照格式套用就好

<?php
namespace app\base\validate; /**
 * Created by PhpStorm.
 * Power by Mikkle
 * QQ:776329498
 * Date: 2017/2/22
 * Time: 15:01
 */ class Member extends \think\Validate { //规则 protected $rule = [ ['mobile','regex:1[34578]\d{9}', '请输入正确的手机号码'], ['userid','alphaDash|length:4,25', '请输入正确的用户名(为字母和数字,下划线_及破折号-)|用户名长度必须在4--20位之间'], ['userpwd','require|alphaDash|length:4,25', '密码不能为空|请输入正确的密码(为字母和数字,下划线_及破折号-)|密码长度必须在4--20位之间'], ['code','require|regex:\d{5}', '手机验证码不能为空|请输入正确的手机验证码'], ]; //场景不同场景验证不同的字段 protected $scene = [ 'login' => ['userid','userpwd','mobile'], 'reg' =>['mobile','userpwd','code'] ]; } 

有几种常用的特殊的规则,在实际开发中还是很常用的,我这里介绍一下
1.字段防止重复

['package_name','require|length:2,15|unique:package', '菜品套餐名称不能为空|请输入正确的菜品套餐名称(2~15位)|菜品套餐名称已经存在'], 

2.多字段防止重复

['package_id','require|number|unique:packageProductAccess,package_id^package_category_id^product_id', '菜品套餐不能为空|请输入正确的ID|已经添加过了,请勿重复添加'], 
['my_uuid','require|unique:userCollection,my_uuid^my_guid', '用户为空|已经收藏过本产品 请勿重复收藏'], 

3.自定义正则

['mobile','regex:1[34578]\d{9}', '请输入正确的手机号码'],
阅读 92