您的位置:首页 > 编程语言 > PHP开发

PHP 自动验证

2016-04-07 15:25 645 查看
ThinkPHP 自动验证格式如下:

array(验证字段,验证规则,错误提示[,验证条件][,附加规则][,验证时间])



项目实例:

<span style="font-family:Microsoft YaHei;font-size:18px;">class MemberModel extends Model{

protected $_validate = array(
array('uname','require','用户名不能为空!'), //默认情况下用正则进行验证
array('uname','','用户名已存在!',0,'unique',1),
array('cityid','require','请选择城市!'),
array('password','require','密码不能为空!'),
array('email','require','Email不能为空!'),
array('email','','Email已存在!',0,'unique',1),
//  array('newpassword','repassword','确认密码不正确',0,'confirm'), // 验证确认密码是否和新密码一致
//  array('wechat','require','微信ID不能为空!'),
array("uname","0,300","用户名内容长度超过300个字符",1,"length"),
array("password","0,300","密码内容长度超过300个字符",1,"length"),
array("微信ID","0,300","微信ID内容长度超过300个字符",1,"length"),
array("email","0,300","Email内容长度超过300个字符",1,"length"),
array('nickname','require','姓名不能为空!'),
array("nickname","0,300","姓名内容长度超过300个字符",1,"length"),
);
}</span>


model层

基本的自动验证有这些:



<span style="font-family:Microsoft YaHei;">//自动验证
protected $_validate = array (
array('name', 'require', '姓名不能为空!', 1, '', 3),
array('tel', 'require', '手机号不能为空!', 1, '', 3),
array('password', 'require', '密码不能为空!', 1, '', 1),
array('email', 'require', '邮箱不能为空!', 1, '', 3),
array('ID_number', 'require', '身份证号不能为空!', 1, '', 3),
array('ID_positive', 'require', '身份证正面照不能为空!', 1, '', 1),
array('ID_opposite', 'require', '身份证反面照不能为空!', 1, '', 1),
array('ID_handle', 'require', '手持身份证照不能为空!', 1, '', 1),
array('bankcard', 'require', '银行卡照片不能为空!', 1, '', 1),
array('openbank', 'require', '开户行不能为空!', 1, '', 3),
array('accountname', 'require', '银行账户名不能为空!', 1, '', 3),
array('bankaccount', 'require', '银行账户号不能为空!', 1, '', 3),
array('tel', '/^\d{11}$/', '手机号不合法!', 1, 'regex', 3),
array('email', 'email', '邮箱不合法!', 1, '', 3),
array('ID_number', '/^(\d{15}$|^\d{18}$|^\d{17}(\d|X|x))$/', '身份证号不合法!', 1, 'regex', 3),
array('tel', '', '手机号已经存在!', 1, 'unique', 3), // 新增修改时候验证tel字段是否唯一
array('email', '', '邮箱已经存在!', 1, 'unique', 3), // email唯一
array('ID_number', '', '身份证号已经存在!', 1, 'unique', 3), // 身份证号唯一
);</span>

说明:

说明,只要定义了Model,在任何地方调用,都会进行验证。很方便。

必须是D方法,才会有效。M方法不会触发自动验证。

$column=D("column");  //好用

$column=M("column"); //不好用
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php 自动验证