Я знаю, что это старый пост, но он был найден при поиске как возможная связь с вопросом, который у меня был.
У меня есть сценарий, очень похожий на то, что мне задают.Вам нужно поместить ваши соединения в динамическую переменную.
например.
У меня есть список филиалов и соответствующие им сведения о подключении к базе данных в массиве с именем $ branchDcom.Я могу звонить на все мои ветви, не закрывая и не открывая все время.
У меня есть функция подключения, которая подключается к базе данных с помощью отправленных значений в функции conn_dcom_branch ('your_server', 'your_db','your_username', 'your_password')
Следующее создает соединения со всеми базами данных.
$connection = array();
foreach ($branchDcom as $key => $value) {
$branch = $value['Name'];
if (!is_resource($connections[$branch]['conn'])) {
${'connection_'.$branch} = conn_dcom_branch($value['server'], $value['db'], $value['username'], $value['password']);
${'connection_'.$branch.'_db'} = $value['db'];
}
}
Это дает мне массив всех соединений с филиалами и соответствующих им имен баз данных.
Чтобы использовать, просто введите имя филиала, и оно будет использовать это соединение:
$branch = 'select_name';
$query = "
SELECT
your_field
FROM
[".${'connection_'.$branch.'_db'}."].['table_name']
";
$rs = ${'connection_'.$branch}->execute($query);
Это может помочь кому-то