【前言】
? ?验证邮箱格式,刚开始只用jquery在前端进行了验证。现在要在后台加个PHP的验证。
?
【主体】
? ?手册--自动验证--验证规则
?
需要验证的表单字段名称,这个字段不一定是数据库字段,也可以是表单的一些辅助字段,例如确认密码和验证码等等。有个别验证规则和字段无关的情况下,验证字段是可以随意设置的,例如expire有效期规则是和表单字段无关的。如果定义了字段映射的话,这里的验证字段名称应该是实际的数据表字段而不是表单字段。
要进行验证的规则,需要结合附加规则,如果在使用正则验证的附加规则情况下,系统还内置了一些常用正则验证的规则,可以直接作为验证规则使用,包括:require 字段必须、email 邮箱、url URL地址、currency 货币、number 数字。
用于验证失败后的提示信息定义
?
?
?
class="php">项目实例 //自动验证 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), // 身份证号唯一 );?
?
?monospace;">说明,只要定义了Model,在任何地方调用,都会进行验证。很方便。
必须是D方法,才会有效。M方法不会触发自动验证。
?
?
.