thinkPHP中服务器端的验证

<?php
    class UserModel extends Model{
        //user是表的名称 必须以表名开始,继承Model类
        protected $_validate=array(
            //array(验证字段,验证规则,错误提示,[验证条件,附加规则,验证时间]);
            array('code','require','验证码必须填写!'),
            array('code','checkCode','验证码错误!',0,'callback',1),//callback方法验证,定义的验证规则是当前模型类的一个方法

            array('username','require','用户必须填写!'),
            array('username','','用户已经存在',0,'unique',1),
            array('username','/^w{6,}$/','用户名必须6个字母以上',0,'regex',1),//regex 正则验证,定义的验证规则是一个正则表达式(默认)
            array('repassword','password','确认密码不正确',0,'confirm'), 
        );

        protected function checkCode($code){
            if(md5($code)!=$_SESSION['code']){
                return false;
            }else{
                return true;
            }
        }
    }
?>

以上是三大自动中的自动验证,自动创建为create(),自动完成为变量$_auto

<?php
    class MessageModel extends RelationModel{
        //自动完成 array(填充字段,填充内容,[填充条件,附加规则])
        protected $_auto=array(
            array('time','time',1,'function'),
            array('uid','getId',1,'callback')
            
        );

//关联模型
protected $_link=array( 'User'=> array( 'mapping_type'=>BELONGS_TO, 'class_name'=>'User',//要关联的模型类名 'foreign_key'=>'uid', 'mapping_name'=>'user',//关联的映射名称,用于获取数据用 'mapping_fields'=>'username',//关联要查询的字段 'as_fields'=>'username',//直接把关联的字段值映射成数据对象中的某个字段 //'as_fields'=>'username:uname',//直接把关联的字段值映射成数据对象中的某个字段 : 更改名字防止冲突 ), ); protected function getId(){ return $_SESSION['id']; } } ?>
关联模型的使用
原文地址:https://www.cnblogs.com/xs-yqz/p/5713242.html