Подключение к вашей базе данных
Существует два способа подключения к базе данных:
Автоматическое подключение
Функция «автоподключения» загрузит и инициализирует класс базы данных при каждом обновлении страницы. Для активации «автоподключения» добавьте слово «database» в массив «library», как показано в файле:
application/config/autoload.php
Ручное подключение
Если подключение к базе данных требуется только на некоторых страницах, вы можете выполнить ручное подключение к базе данных, добавив эту строку кода в любую функцию, где она необходима, или в конструктор вашего класса, чтобы сделать базу данных доступной глобально в этом классе.
%%%CODE_BLOCK_0%%Если указанный выше функции не содержит никакой информации в первом параметре, она будет подключиться к группе, указанной в вашем файле конфигурации базы данных. Для большинства пользователей это предпочтительный метод.
Доступные параметры
- Значения подключения к базе данных, передаваемые в виде массива или строки DSN.
- ИСТИНА/ЛОЖЬ (булево). Возвращать ли идентификатор подключения (см. Подключение к нескольким базам данных ниже).
- ИСТИНА/ЛОЖЬ (булево). Включить ли класс Query Builder. По умолчанию установлено в ИСТИНА.
Ручное подключение к базе данных
Первый параметр этой функции можно необязательно использовать для указания конкретной группы базы данных из файла конфигурации, или вы можете даже передать значения подключения для базы данных, которая не указана в вашем файле конфигурации. Примеры:
Чтобы выбрать конкретную группу из вашего файла конфигурации, вы можете сделать это:
%%%CODE_BLOCK_1%%Где group_name — имя группы подключения из вашего файла конфигурации.
Чтобы выполнить ручное подключение к желаемой базе данных, вы можете передать массив значений:
%%%CODE_BLOCK_2%%Дополнительную информацию о каждом из этих значений можно найти на странице конфигурации.
Примечание
Для драйвера PDO вы должны использовать значение $config['dsn'] вместо ‘hostname’ и ‘database’:
Или вы можете передать значения вашей базы данных в виде имени источника данных (DSN). DSN должны иметь такой прототип:
%%%CODE_BLOCK_3%%Чтобы переопределить значения конфигурации по умолчанию при подключении с помощью строки DSN, добавьте переменные конфигурации в качестве строки запроса.
%%%CODE_BLOCK_4%%Подключение к нескольким базам данных
Если вам нужно подключиться к нескольким базам данных одновременно, вы можете сделать это следующим образом:
%%%CODE_BLOCK_5%%Примечание: Замените слова «group_one» и «group_two» на конкретные имена групп, к которым вы подключаетесь (или вы можете передать значения подключения, как указано выше).
Установив второй параметр в ИСТИНА (булево), функция вернёт объект базы данных.
Примечание
В этом случае вы будете использовать имя своего объекта для выдачи команд, а не синтаксис, используемый в этом руководстве. Другими словами, вместо выдачи команд:
Примечание
Вам не нужно создавать отдельные конфигурации базы данных, если вам нужно использовать только другую базу данных в одном подключении. Вы можете переключаться на другую базу данных по мере необходимости, так:
Переподключение / Поддержание подключения активным
Если тайм-аут бездействия сервера базы данных превышен во время выполнения интенсивных вычислений PHP (например, при обработке изображения), вам следует рассмотреть возможность отправки запроса ping на сервер с помощью метода reconnect() перед отправкой дополнительных запросов, что может обеспечить плавное поддержание или повторное установление подключения.
%%%CODE_BLOCK_6%%Ручное закрытие подключения
Хотя CodeIgniter разумно заботится о закрытии ваших подключений к базе данных, вы можете явно закрыть подключение.
%%%CODE_BLOCK_7%%
© 2014–2020 British Columbia Institute of Technology
Licensed under the MIT License.
https://codeigniter.com/userguide3/database/connecting.html