artfantasy 发表于 2008-6-27 17:39:42

请教一下怎么在hooks里调用数据库类?

因为刚好需要用CI提供的钩子解决一个应用问题,官方的说明文档只说了怎么设置钩子,但没有说怎么在钩子的函数或类中使用$this->db类似的类库啊?我的数据库类是自动加载的,并且我使用的钩子挂载点是在pre_controller点,应该来说类库已经是加载了的,只是我不知道怎么调用,哪位大哥帮帮忙?我手上没调试工具,只有一个notepad++..........
:Q :Q :(

Hex 发表于 2008-6-27 23:07:22

get_instance() 不行?

artfantasy 发表于 2008-6-28 15:19:06

我好像是在文档的哪部份,有看到过get_instance() 的介绍。。。
嗯,等我过会儿研究下

artfantasy 发表于 2008-6-28 16:22:08

Oh No............
get_instance() 不行,引不过来。。。

Hex 发表于 2008-6-28 22:40:40

有空我测试一下,最近作东西也没用到钩子,呵呵

artfantasy 发表于 2008-6-29 02:17:05

get_instance() 引不到,我想是因为在这个挂载点时核心类库还未加载,所以引过来为NULL值^
然后经群友提点,想到用Loader,但是没成功。。
用Zend Studio Debug貌似很烦,因为URL中不能带有非法字符。。
直接是晕了!

neversaylate 发表于 2009-2-17 11:48:18

楼主用get_instance()时用&引用了吗?
$this->CI = &get_instance();
$this->CI->db->...

Hex 发表于 2009-2-17 13:30:56

应该是 get_instance() 还没定义呢吧?

neversaylate 发表于 2009-2-17 13:43:28

不是吧,get_instance()是在base4.php(base5.php)中定义的,pre_controller是指在控制器加载前进行,应该require过了base4.php(php4环境下)。我觉得就是没有引用方式调用。

xhui_cool 发表于 2009-2-17 17:13:05

老兄在挖坟。。。
页: [1] 2
查看完整版本: 请教一下怎么在hooks里调用数据库类?