kkk 发表于 2010-6-2 15:38:35

hook中的& get_instance()无法获取

某个hook中,pre_controller中使用$ci=& get_instance(),结果打印出来的ci为空,Google了下,说是
在pre_controller 的时候控制器还没实例化。。。。。。
那请问有什么办法获取& get_instance()呢?

kkk 发表于 2010-6-2 16:17:02

我不明白的是,手册所说的:
pre_controller
在调用你的任何控制器之前调用.此时所用的基础类,路由选择和安全性检查都已完成.
按我理解,“所用的基础类”应该可以调用了& get_instance()了吧?

Hex 发表于 2010-6-2 17:51:51

构造函数还没有执行完,所以现在还没有超级对象,请使用 post_controller_constructor 挂钩点。

kkk 发表于 2010-6-2 19:23:06

回复 3# Hex


   看来我还是不太理解CI中的HOOK,不好意思,用惯了ZF,一时没看明白CI的hook内部机制......

mahone 发表于 2010-6-3 14:30:28

ci的hook是这样
$EXT->_call_hook('pre_system');/codeigniter.php line89
这里就去执行你预先设置的hook了
然后你到Hooks类里去看这个方法就明白了。
其他的hook一样加载。

kkk 发表于 2010-6-3 15:45:29

回复 5# mahone


   谢谢指点:)
页: [1]
查看完整版本: hook中的& get_instance()无法获取