如何从模型/控制器访问CodeIgniter配置变量?

Mat*_*hew 9 php database model-view-controller codeigniter

我想从模型中访问(CodeIgniter配置文件)中的$db['default']['dbprefix']变量,这样我就可以使用文件中的值编写自己的查询./application/config/database.php

如何才能做到这一点?

fir*_*ire 23

尝试:

$this->load->database();
echo $this->db->dbprefix;
Run Code Online (Sandbox Code Playgroud)

通常你可以使用$ this-> config-> item但我认为只允许在$ config中设置变量


Phi*_*eon 7

文档说您应该使用:

$this->db->dbprefix('tablename');
Run Code Online (Sandbox Code Playgroud)

不会产生很大的差异,但可能是一种更简单的语法.

  • 用户指南对此有简单的措辞."如果您已配置数据库前缀并希望手动添加它,则可以使用以下内容." 它们意味着如果您想手动将前缀添加到查询中,则可以执行此操作.使用$ this-> db-> dbprefix本质上是访问一个私有变量,在PHP 4中是完全允许的.他们为此添加了一个方法,因此使用它是一个更好的主意,就好像EllisLab最终切换到完整的PHP 5一样,即使将 - > dbprefix设置为实际的私有属性,它也将继续工作.不重要,但要考虑的事情.:-) (3认同)