数据校验
我们在做项目时,需要接受用户提交的数据来进行入库,但是总会有一些非法用户提交一些不规范的数据到服务器,多少会对数据安全造成一定的影响。所以我们提供了数据校验工具库严格筛查数据规范性
食用方法
<?php
class indexController extends Mb{
public function index(){
$checkRules = [
'user' => ['wordnum','6,18','账号不规范'],
'password' => ['Password','6,18','密码不规范']
];
$dataChecker = t('dataChecker',$_POST, $checkRules);
$res = $dataChecker->check();
if($res){
echo '数据规范';
}else{
echo '数据不规范:'.$dataChecker->error;//获取错误信息
}
}
}
验证规则列表
| 类型 | 功能 | 规则参数 |
|---|---|---|
| string | 字符串长度检查 | 如:5, 100 |
| int | 整数及长度检查 | 如: 1, 8 |
| betweend | 整数区间检查 | 如:100,999 |
| between | 数值区间检查 | 如:-10.12,100 |
| isFloat | 小数检查 | 无需参数 |
| betweenf | 小数区间检查 | 如:1, 88 |
| floatLenght | 小数及小数位数检查 | 如:2,3 |
| gt | 大于某个数值 | 如:100 |
| gtAndSame | 大于等于某个数值 | 如:100 |
| lt | 小于某个数值 | 如:100 |
| ltAndSame | 小于等于某个数值 | 如:100 |
| same | 等于一个值 | 如:100 或 grace |
| Sameone | 等于某一个值 | 如:add,del,edit |
| notSame | 不等于某个值 | 如:100 |
| 邮件地址检查 | 无需参数 | |
| phone | 手机号码检查 | 无需参数 |
| Mobile | 电话号码检查 | 无需参数 |
| url | url 地址检查 | 无需参数 |
| www | 域名检查 | 无需参数 |
| zipcode | 邮编检查 | 无需参数 |
| name | 姓名检查 | 如:2,4 |
| idcard | 身份证检查 | 无需参数 |
| bank | 银行卡检查 | 无需参数 |
| kword | 字母检查 | 无需参数 |
| wordnum | 字母+数字检查 | 如:2,10 |
| wordnumS | 字母开头+数字检查 | 如:2,10 |
| special | 特殊字符检查 | 如:2,10 |
| space | 空格检查 | 如:2,10 |
| password | 密码检查 | 如:2,10 |
| reg | 正则表达检查 | 自定义正则表达式 |
另类的食用方法
可以多总验证方式,比如账号登录时,支持邮箱和手机号登录:email,phone
<?php
class indexController extends Mb{
public function index(){
$checkRules = [
'user' => ['email,phone','6,18','账号不规范'],
'password' => ['Password','6,18','密码不规范']
];
$dataChecker = t('dataChecker',$_POST, $checkRules);//验证POST数据
$res = $dataChecker->check();
if($res){
echo '数据规范';
}else{
echo '数据不规范:'.$dataChecker->error;//获取错误信息
}
}
public function checkget(){
$checkRules = [
'user' => ['email,phone','6,18','账号不规范'],
'password' => ['Password','6,18','密码不规范']
];
$dataChecker = t('dataChecker',$_GET, $checkRules);//验证GET数据
$res = $dataChecker->check();
if($res){
echo '数据规范';
}else{
echo '数据不规范:'.$dataChecker->error;//获取错误信息
}
}
public function checkdata(){
$data = ['user'=>'51154393@qq.com','password'=>'ABCD12345']
$checkRules = [
'user' => ['email,phone','6,18','账号不规范'],
'password' => ['Password','6,18','密码不规范']
];
$dataChecker = t('dataChecker',$data, $checkRules);//验证$data数据
$res = $dataChecker->check();
if($res){
echo '数据规范';
}else{
echo '数据不规范:'.$dataChecker->error;//获取错误信息
}
}
}