如何在CodeIgniter中访问DB配置?

Sta*_*bie 9 codeigniter

在我的应用程序,我需要知道分配给数据库的配置项目,如什么样的价值观database,username等我如何获取这些信息?

Chr*_*s B 48

我没有足够的代表评论马特布朗的正确答案,但只是添加一点,任何人忘记...

首先加载db驱动程序:

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

那么你可以轻松访问你需要的东西:

$this->db->hostname
$this->db->username
$this->db->password
$this->db->database
Run Code Online (Sandbox Code Playgroud)


Mat*_*wne 7

几乎所有的配置值都可以通过$ this-> db访问(看看system/database/DB_driver.php).

这对我有用......这里没有其他建议.


s1d*_*s1d 6

如果您在config/database.php中定义了多个数据库连接组,例如:

  $db['dbname']['hostname'] = "localhost";
  $db['dbname']['username'] = "root";
  $db['dbname']['password'] = "root";
  $db['dbname']['database'] = "web_dbname";

  $db['dbname_readonly']['hostname'] = "localhost";
  $db['dbname_readonly']['username'] = "root";
  $db['dbname_readonly']['password'] = "root";
  $db['dbname_readonly']['database'] = "web_dbname_readonly";
Run Code Online (Sandbox Code Playgroud)

如果要在控制器或模型中使用任何特定db的连接参数:

  $db = $this->load->database('dbname');
Run Code Online (Sandbox Code Playgroud)

如果要在帮助器或库中使用:

  $ci = &get_instance();
  $db = $ci->load->database('dbname');
Run Code Online (Sandbox Code Playgroud)

连接参数将以$ db-> hostname,$ db-> username等形式提供.


Nov*_*ovo -3

您可以通过以下方式检索它: http ://codeigniter.com/user_guide/libraries/config.html

$this->config->item('item name');
Run Code Online (Sandbox Code Playgroud)

  • 但它不是一个配置项。配置项存储在`$config`数组中。我正在尝试访问存储在 $db 数组中的数据库配置。 (3认同)