Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace Project\System\Database;
- class PDOMySQLConnectionDescriptor extends PDOConnectionDescriptor
- {
- protected function createPdoObject (DatabaseConnectConfig $_databaseConnectConfig): \PDO
- {
- // Подключение к базе данных MySQL с помощью вызова драйвера.
- $dsn = 'mysql:dbname=' . $_databaseConnectConfig->getDbname ()
- . ';host=' . $_databaseConnectConfig->getHost ()
- . ';port=' . $_databaseConnectConfig->getPort ()
- . ';charset=' . $_databaseConnectConfig->getCharset ();
- $user = $_databaseConnectConfig->getUser ();
- $password = $_databaseConnectConfig->getPassword ();
- $pdo = new \PDO ($dsn, $user, $password);
- // Включаем обработку ошибок БД через исключения.
- $pdo->setAttribute (\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
- // Выключаем режим эмуляции подготовленных параметров.
- // Данные будут передаваться pdo в чистом виде в отдельном обращении к БД.
- // Можно использовать обычную обработку параметра LIMIT (LIMIT ?),
- // нельзя использовать именованные параметры несколько раз (user_from = :id or user_to = :id).
- $pdo->setAttribute (\PDO::ATTR_EMULATE_PREPARES, false);
- return $pdo;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement