我应该将codeigniter模型对象放到全局变量中

时间:2013-01-25 09:53:09

标签: php codeigniter

我只是想知道是否有人可以分享建议。 我正在构建大型Codeigniter应用程序,我正在考虑将一些模型对象放入$GLOBALS

这样我可以在Wordpress中执行global $post;global $wpdb之类的操作。

这是否有意义并且这是一个好主意?在这种情况下,我应该首先自动加载这些模型吗?

2 个答案:

答案 0 :(得分:2)

使用单例模式时污染全局命名空间不是一个好主意。当您不在CodeIgniter超级对象中时,只需使用$CI =& get_instance();

为什么你还想这样做呢?你想要的是什么原因?通过省略this->来减少写作?事实并非如此,因为您必须在每个文件和函数中编写global $post

答案 1 :(得分:0)

你错过了面向对象编码的整个想法...... 如果要重用对象,请使用依赖注入容器。

在OO代码中将任何内容放入全局命名空间都是完全错误的。