如何在CodeIgniter中访问DB配置?

时间:2011-12-07 09:20:54

标签: codeigniter

在我的应用程序中,我需要知道为数据库配置项分配了哪些值,例如databaseusername等。如何访问这些信息?

6 个答案:

答案 0 :(得分:42)

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

首先加载db驱动程序:

$this->load->database();

然后您可以轻松访问所需内容:

$this->db->hostname
$this->db->username
$this->db->password
$this->db->database

答案 1 :(得分:7)

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

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

答案 2 :(得分: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";

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

  $db = $this->load->database('dbname');

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

  $ci = &get_instance();
  $db = $ci->load->database('dbname');

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

答案 3 :(得分:0)

您可以使用以下方法检索它:     http://codeigniter.com/user_guide/libraries/config.html

$this->config->item('item name');

答案 4 :(得分:0)

我偶然发现了这一点,寻找找到所有数据库设置的方法。无法在线查找解决方案,但在 if ( ! file_exists($f = APPPATH.'config/'.ENVIRONMENT.'/database.php') && ! file_exists($f = APPPATH.'config/database.php')) { show_error('The configuration file database.php does not exist.'); } include($f); // Use a NEW variable. // Because $db is a reserved name!! $db_settings = $db; foreach($db_settings as $key => $value) { // .. do something with .. $this->database->load($key); // .. do something with .. $value['database']; // .. do something with .. $value['password']; }

中找到了一些有用的代码

这是我的方法,获取整个数据库配置的内容:

#define N  32768

__global__ void op(float k_a[][N])
{
 //some operation
}
float *ptr_a=(float*)malloc(N*N*sizeof(float));

float *d_ptr_a;cudaMalloc((void**)&d_ptr_a,N*N*sizeof(float));

cudaMemcpy(d_ptr_a,ptr_a,N*N*sizeof(float),cudaMemcpyHostToDevice);

op<<<nblocks,nthreadsperblock>>>(d_ptr_a)

答案 5 :(得分:-2)

您应该可以按照以下方式获取配置设置:

$this->config['env']