用户
 找回密码
 入住 CI 中国社区
搜索
查看: 1258|回复: 1
收起左侧

[HELP] 求助:db类继承问题

[复制链接]
发表于 2017-3-7 11:07:43 | 显示全部楼层 |阅读模式
继承类:
class MY_Auth_db extends CI_DB {

        public function __construct($config = array())
        {
        parent::__construct($config);
                $this->CI =& get_instance();
        }
       
    public function column()
    {       
            $result = parent::get();
        return $result;
    }
       
}


调用:

$this->CI->load->library('MY_Auth_db');

            $result = $this->CI->my_auth_db->select('*')->from('auth_access')
                                        ->column();

报错:
Type: Error
Message: Call to undefined method MY_Auth_db::_execute()
Filename: D:\qampp\htdocs\base\system\database\DB_driver.php

不太明白父类的get()为什么会调子类的方法?

发表于 2017-3-7 11:47:13 | 显示全部楼层
CI 的数据库类原则上不能扩展,但是要想扩展的话,最好是通过扩展 loader 里的 database 方法来扩展 DB 类。至于这个问题,需要看看 DB_driver.php 里代码是如何写的,因为私有方法继承的类是无法访问的。

本版积分规则