php用于验证数据的工具程序
<?php4A'P(Nk BA'{;T// @author Liao Yu Lei <[email]daut@dualface.com[/email]>;
5m)SS7^^?aGn r
/**,ns5AL?j2nf%T"Be)_
* 验证规则由两部分组成:0rY+[)O*BG
* m"dTFl1CL!W[
* 首先是数据类型:)Ft |6g/oV
*
* NUMBER 数字m#_7yU/L3S
* INT 整数0hE3C}a3Ab*c*L+E
* FLOAT 浮点数#}sxe)jT6E
* ASCII ASCII字符串
* EMAIL Email地址
* DATE 日期
* TIME 时间/rQ%w JQ
* IPv4 IPv4地址DiA}$n9nf` \^
* OCTAL 八进制数值2p8GX|V8Kt.V2or`
* BINARY 二进制数值,@x^ H*U2i
* HEX 十六进制数值
* DOMAIN Internet域名Q%?!G0H,o"dn&T[
* ANY 任意类型(等同于字符串)g6n-ZlyU
* STRING 字符串*O"^VH+_J
* 如果类型字符串前面有一个?,表示这个数据可以是空值
*3F ef'Z J5a
* 然后要用于验证的验证函数:
* 8}NU;T&g3dTT"e-I
* min 最小值检查0V?6FZ*WN
* max 最大值检查 Sv?#ld-|;]z
* len 有效长度检查
* len(最小长度,[最大长度])
* equ 等于
* equ(值)
* equitem 等于另一个项目的值
* equitem(项目名) cm!AtNI,Nq_
* exist 检查项目是否存在c'P,t{T
* exist(项目名称)
* not 上述函数返回结果取反&p%i z7t}2OWH
* not(exist(项目名称))
*
* 验证方法:#s-{!z3x i[
* 1. 首先检查数据类型,如果未通过则不再验证函数,直接返回false。(wm x)DR\`
* 如果数据类型字符串前面有?,那么当值为空时返回true。%Y kW!C;|7OVs
* 2. 接着验证函数,从左到右,如果验证过程中有函数返回false,
* 则不再验证剩下的函数,直接返回false。 C F3? J_
* 3. 函数允许嵌套,但除了not函数,其他函数嵌套结果未定义。o5pqF2R;OV-^J
*
* 示例:"p"W o[dRj)oH
* $c = & new Checker();-^On^*R2Ss6o
*
* $c->;check($_POST['title'], 'ANY', 'len(1,32)'); wkXe/w b:k
* 验证$_POST['title']的长度是否在1和32之间。3R:KzilZ2u2k
*