Извините, если это настоящий вопрос новичка (также новичок в php), но я не могу понять это из документов:
Я хочу использовать базу данных по умолчанию, если я неничего особенного, и это прекрасно работает, используя $ this-> db со следующей конфигурацией:
$active_group = 'default';
$active_record = TRUE;
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = 'root';
$db['default']['database'] = 'ion_auth';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
$db['visitorsDB']['hostname'] = 'localhost';
$db['visitorsDB']['username'] = 'root';
$db['visitorsDB']['password'] = 'root';
$db['visitorsDB']['database'] = 'visitorsDB';
$db['visitorsDB']['dbdriver'] = 'mysql';
$db['visitorsDB']['dbprefix'] = '';
$db['visitorsDB']['pconnect'] = TRUE;
$db['visitorsDB']['db_debug'] = TRUE;
$db['visitorsDB']['cache_on'] = FALSE;
$db['visitorsDB']['cachedir'] = '';
$db['visitorsDB']['char_set'] = 'utf8';
$db['visitorsDB']['dbcollat'] = 'utf8_general_ci';
$db['visitorsDB']['swap_pre'] = '';
$db['visitorsDB']['autoinit'] = TRUE;
$db['visitorsDB']['stricton'] = FALSE;
Но затем я хочу использовать вторую базу данных в одной из моих моделей, поэтому я попробовал это:
function __contruct() {
parent::__construct();
$this->db = $this->load->database('visitorsDB', TRUE);
}
public function getAllVisitors($paramArr) {
//$this->db = $this->load->database('visitorsDB', TRUE);
Но это не работает.Только если я раскомментирую последнюю строку, чтобы загрузить базу данных в сам метод, она будет работать.Я не понимаю почему.Я также попытался объявить новую переменную класса в начале класса - private $ myDB;- и затем создать его экземпляр в конструкторе - $ myDB = $ this-> load-> database ('membersDB', TRUE);
Но это тоже не сработало.Так как же я могу переключить базу данных для всей модели?