Sometime you will want to load database config variables from your libraries.In this case, if you use $this-_CI-config-load(database) , you will get an error: $this-_CI = get_instance();$this-_CI-config-load('database'); The error somthing
sometime you will want to load database config variables from your libraries.in this case, if you use $this->_ci->config->load(‘database’), you will get an error:
$this->_CI = &get_instance();
$this->_CI->config->load('database');
The error somthing like Your application/config/database.php file does not appear to contain a valid configuration array.
The source is in `system/core/Config.php#138`:
// CodeIgniter Version 2.1.4
if ( ! isset($config) OR ! is_array($config))
{
if ($fail_gracefully === TRUE)
{
return FALSE;
}
show_error('Your '.$file_path.' file does not appear to contain a valid configuration array.');
}
You can find that the config will lookup an array with the name $config, but in your database’s config file it contains array variable with the name $db?defaultly.This is the reason you got the invalid configuration array error message.
To correctly load database configuration from libraries,you can you code below:
$this->_CI->load->database('default');
$db = $this->_CI->db;
Something::config(['driver'=> 'mysql','host'=> $db->hostname,
'dbname'=> $db->database,
'user'=> $db->username,
'password'=> $db->password]);
Notice the `default` is the active group in your database configuration file.
原文地址:Load database config file from libraries in CodeIg, 感谢原作者分享。
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号