Переключение между несколькими базами данных с использованием хуков в hmvc codeigniter

Я работаю с CI3 и никогда раньше не использовал хуки. У меня 2 панели пользователя,

  1. Admin (один дБ)
  2. Пользователи (каждый пользователь имеет свою собственную базу данных)

В моих хуках есть класс switchDatabase, в который я добавил следующий код для переключения между несколькими базами данных, основанными на администраторах и пользователях.

function switchDatabase()
{
$CI = &get_instance();
$CI->load->model("common");

if (DB_TYPE != 'default') {
$rts = $CI->doctrine->em->getRepository("entities\\AppCompany")
->findOneBy(array("companyName" => DB_TYPE));

$data = array();
$data['dbHost']     = $rts->getHost();
$data['dbUsername'] = $rts->getUsername();
$data['dbPassword'] = $rts->getPassword();
$data['dbDatabase'] = $rts->getDatabase();

$CI->common->initialize($data, true);

$config = array();
$config['hostname'] = $data['dbHost'];
$config['username'] = $data['dbUsername'];
$config['password'] = $data['dbPassword'];
$config['database'] = $data['dbDatabase'];
$config['dbdriver'] = "mysqli";
$config['dbprefix'] = "";
$config['pconnect'] = TRUE;
$config['db_debug'] = TRUE;
$config['cache_on'] = FALSE;
$config['cachedir'] = "";
$config['char_set'] = "utf8";
$config['dbcollat'] = "utf8_general_ci";
$config['swap_pre'] = '';
$config['autoinit'] = TRUE;
$config['stricton'] = FALSE;

$CI->load->database($config);

define('FOREIGN_DB', true);
}
}

Нет, моя проблема в том, как или где мне определить DB_TYPE переменная. Я определил эту переменную для моего контроллера. но не повезло .. Пожалуйста, помогите мне решить эту проблему.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]