李炎恢ThinkPHP讲义ThinkPHP--自动完成[14]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了李炎恢ThinkPHP讲义ThinkPHP--自动完成[14]相关的知识,希望对你有一定的参考价值。

C层:

public function login_two(){
        $person =D(‘Person‘);
        $data[‘user_id‘] = ‘28‘;
        $data[‘name‘] = ‘‘;
        $data[‘password‘] = ‘111111‘;
        //$data[‘repassword‘] = ‘12345‘;
        if($person->create($data)){
            $person->save();
        }else { 
            var_dump($person->getError()); 
        }
    }

M层:

//自动完成
    protected $_auto =array(
        //string类型 可省略后面两个
        array(‘remark‘,‘备注‘),
        //function,给密码加密,加密类型为sha1,sha1函数php内置(sha1是数字’1‘不是字母’l‘)
        array(‘password‘, ‘sha1‘, 3, ‘function‘),
        //把email字段的值填充到user字段 
        array(‘remark‘, ‘name‘, 3, ‘field‘),
        //callback,自定义方法如:给用户名加前缀
        array(‘name‘,‘updatename‘,3,‘callback‘,‘hotel_‘),
        //ignore,用于修改时密码留空时,忽略修改 
        array(‘name‘, ‘‘, 2, ‘ignore‘),
    );
    //自定义回调函数
        protected function updatename($str,$prefix){
            return $prefix.$str;
        }

自动完成的意义(不明觉厉。。。):

自动完成是ThinkPHP提供用来完成数据自动处理和过滤的方法,使用create方法创建数据对象的时候会自动完成数据处理。

因此,在ThinkPHP使用create方法来创建数据对象是更加安全的方式,而不是直接通过add或者save方法实现数据写入。

以上是关于李炎恢ThinkPHP讲义ThinkPHP--自动完成[14]的主要内容,如果未能解决你的问题,请参考以下文章

李炎恢PHP第4季视频教程 微博项目实战

ThinkPHP学习 --- 02 url解析 ---- 03 模块设计 ---------- 学习

ThinkPHP学习 --- 04控制器定义 --------------05控制器操作 -----------------学习

李炎恢《PHP第二季视频教程》之总结

李炎恢第三季视频教程 php设计模式 smarty 商城实战 李炎恢php教程全套 共172课包含源码课件

李炎恢老师模型初步(下)5