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

[已解决] 调用我自己创建的类时出问题了

[复制链接]
发表于 2012-3-6 22:33:41 | 显示全部楼层 |阅读模式
我自己创建的类kdb.php(类名:Kdb)放在application/libraries下,然后在我的model里这样子load进来:$this->load->library('kdb');
结果是这一步都通不过,经过调试,程序断在了:Loader.php中的_ci_init_class()的最后一步$CI->$classvar = new $name;

肿么办?冰天雪地跪求大侠指教~~~~~



发表于 2012-3-7 08:53:47 | 显示全部楼层
model 里有问题,要继承CI的model,并且要parent::__construct ();
发表于 2012-3-7 08:54:52 | 显示全部楼层
类名叫  Kdb
这个文件名是不是也叫 kdb 呢?
报错信息可以贴出来参考一下!
 楼主| 发表于 2012-3-7 11:32:12 | 显示全部楼层
model里已经有
public function __construct() {
        parent::__construct();
}
这一段代码了,还是不行。。。。类名是Kdb,文件名是kdb.php.

日志是写到这里就停止了:
DEBUG - 2012-03-07 11:31:42 --> Controller Class Initialized
DEBUG - 2012-03-07 11:31:42 --> Model Class Initialized
DEBUG - 2012-03-07 11:31:42 --> Model Class Initialized
DEBUG - 2012-03-07 11:31:42 --> Model Class Initialized
 楼主| 发表于 2012-3-7 12:05:43 | 显示全部楼层
我想着,是不是不允许在model里load libraries的呢?
 楼主| 发表于 2012-3-7 17:22:04 | 显示全部楼层
问题解决了,可以在model里load library,只是你创建的那个类的__constructor 要不没有,有的话前面的关键字只能是pubic,不能使private或者protected.
发表于 2012-3-8 12:46:22 | 显示全部楼层
happyqyt 发表于 2012-3-7 17:22
问题解决了,可以在model里load library,只是你创建的那个类的__constructor 要不没有,有的话前面的关键 ...

构造函数不能是私有的。。。否则的话这个类就无法实例化了,这是基础知识。
 楼主| 发表于 2012-3-9 11:40:44 | 显示全部楼层
Hex 发表于 2012-3-8 12:46
构造函数不能是私有的。。。否则的话这个类就无法实例化了,这是基础知识。 ...

恩恩。。是的呢~我2了~

本版积分规则