Подключения PHP PDO
Справочное руководство по PHP PDO
Подключения устанавливаются путём создания экземпляра базового класса PDO. Независимо от используемого драйвера используется имя класса PDO.
Подключение к MySQL
<?php
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
?>
Примечание:Если возникнут ошибки соединения, будет выброшен объект исключения PDOException.
Обработка ошибок соединения
<?php
try {
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
foreach($dbh->query('SELECT * from FOO') as $row) {
print_r($row);
}
$dbh = null;
} catch (PDOException $e) {
print "Error!: " . $e->getMessage() . "<br/>";
die();
}
?>
После успешного подключения к базе данных скрипту возвращается экземпляр класса PDO. Это соединение остается активным в течение всего времени жизни объекта PDO.
Чтобы закрыть соединение, нужно уничтожить объект, обеспечив удаление всех оставшихся ссылок на него. Можно присвоить переменной объекта значение NULL.
Если этого не сделать, PHP автоматически закроет соединение по завершении скрипта.
Закрытие соединения:
<?php
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
// 在此使用连接
// 现在运行完成,在此关闭连接
$dbh = null;
?>
Многие веб-приложения выигрывают от использования постоянных соединений со службами баз данных.
Постоянные соединения не закрываются после завершения скрипта и кэшируются. Они повторно используются, когда другой скрипт с теми же учетными данными запрашивает соединение.
Кэширование постоянных соединений позволяет избежать накладных расходов на установку нового соединения каждый раз, когда скрипту требуется сеанс с базой данных, что ускоряет веб-приложения.
Постоянные соединения
<?php
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass, array(
PDO::ATTR_PERSISTENT => true
));
?>
Примечание:Если вы хотите использовать постоянные соединения, необходимо задать PDO::ATTR_PERSISTENT в массиве параметров драйвера, передаваемом конструктору PDO. Если этот атрибут задан с помощью PDO::setAttribute() после инициализации объекта, драйвер не будет использовать постоянные соединения.
Справочное руководство по PHP PDO
Другие расширения