VailData数据验证类

原创
2016-06-07 11:44:47 1168浏览

VailData数据验证类是用于服务器端(PHP)验证传入的数据值的合法性,简单易用
VailData验证类,插件
说明:
VailData验证类,提供内置函数有'a','e','f','s','n','r','q','t','p','u'
a函数:判断是否为空
e函数:验证Email
f函数:判断两值是否相等
r函数:正则表达式验证
q函数:验证qq
t函数:验证手机
p函数:验证电话
u函数:验证url

规则如下:
s函数:
s1-10 表示:必须是字符串类型并且1-10位之间
s1, 表示:必须是字符串类型并且在1位以上
s10 表示:必须是字符串类型并且长度必须等于10位

n函数:
n函数和s函数的使用方法一致,但是区别在于函数是判断是否是数字类型

e函数:
e函数无附加参数类型如:e1-10,e10,e10,都是错误的

f函数:
判断两值是否相等,只能提供表单名或数组的键名如,密码和密码确认判断
表单:password,repeat_password
可以使用f函数password=>array(frepeat_password,'密码和密码确认不一致!!!');r函数:
使用任意正则表达式
如用户名验证必须以字母开头'username'=>array('r/[a-z][\w]/i','用户名格式不正确!!!');q函数,t函数,p函数,u函数:
无特别意义,示例如下:qq=>array('q','QQ号码格式不正确');
tel=>array('t','手机号码格式不正确');
phone=>array('p','电话格式不正确');
url=>array('u','URL格式不正确');
VailData函数可执行简单逻辑判断如:
验证是否是email并且长度在10位以上
那么验证规则则为'email'=>array('e&s10,','Email格式不正确!!!');验证可以是电话号码也可以是手机号码'tel_phone'=>array('t|p')特别验证(可能例子不太洽当)'test'=>array('e&s10,|n10','Test格式不正确');以上示例表明
是Email类型必须是10位以上或者是数字类型并且是10位

除此之外:VailData验证类还可以传入自定义的函数或对像验证这及大的提高的VailData验证类的扩展性如:
但不管是函数还是方法,必须符合以下规范
1,只能返回true或false,也可返回字符串值,但VailData都会以boolean值形式来处理
2,必须绑定一个参数,如
你需要验证这个值是否是和你传入的值相等,你必须要以以下格式function($string,$eqVal) {
return $string == $eqVal;
}
此是$string,值由VailData自动赋值,

参考示例class B{
public function test_eq($string,$eq_val) {
return $string === $eq_val;
}
}
验证规则
require B.class.php;'test'=>array(new B(),'test_eq',参数1,参数2,...,'错误的提示信息');注意,这里传的参数是从$eq_val开始的,$string,由VailData自动传入

普通函数传入示例
functions.phpfunction test($string,$eq_val) {
return $string === $eq_val;
}
'test'=>array('_test',参数1,参数2,...,'错误的提示信息');//外部函数以"_"为标识,
同方法一样这里传的参数是从$eq_val开始的,$string,由VailData自动传入

如果验证出错可使用以下方式来判断if(!$b['vail_status']) parent::error($b['vail_error']);//具体可参考示例
如果成功,它会返回你之前传入的数组

下面是具体示例:if (isset($_POST['send'])) {
$postData = VailData::_vailData()->_check(array(
'username'=>array('s6-10|n6-10|r/^[1]{3}$/|s5,','用户名格式不正确'),
'password'=>array('s10|a','密码格式不正确'),
'repeat_password'=>array('fpassword|n10,','密码确认格式不正确'),
'email'=>array('e&s10,|n10,','Email格式不正确'),
'remark'=>array('n10&s10','备注不能为空'),
'phone'=>array('s10,','电话格式不正确!!!'),
'remark'=>array('_check','8959','备注格式不正逗趣儿 '),//外部函数,函数名前名必须加上_
'remark'=>array(new B(),'test','8959','备注格式不正逗趣儿 '),
), $_POST);
if(!$postData['vail_status']) parent::error($postData['vail_error']);
}
以上就是VailData的使用方法
刚完成不久,可能还有很多需要完善的地方和修补的Bug,希望大家多多提意见,

请注意:之前下载的朋友,请重新下载,文件传错了,不好意思

附件 VailData.zip ( 4.92 KB 下载:214 次 )

AD:真正免费,域名+虚机+企业邮箱=0元

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。