vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOMySql/Driver.php line 24

Open in your IDE?
  1. <?php
  2. namespace Doctrine\DBAL\Driver\PDOMySql;
  3. use Doctrine\DBAL\Driver\AbstractMySQLDriver;
  4. use Doctrine\DBAL\Driver\PDO;
  5. use Doctrine\DBAL\Exception;
  6. use PDOException;
  7. /**
  8.  * PDO MySql driver.
  9.  *
  10.  * @deprecated Use {@link PDO\MySQL\Driver} instead.
  11.  */
  12. class Driver extends AbstractMySQLDriver
  13. {
  14.     /**
  15.      * {@inheritdoc}
  16.      */
  17.     public function connect(array $params$username null$password null, array $driverOptions = [])
  18.     {
  19.         try {
  20.             $conn = new PDO\Connection(
  21.                 $this->constructPdoDsn($params),
  22.                 $username,
  23.                 $password,
  24.                 $driverOptions
  25.             );
  26.         } catch (PDOException $e) {
  27.             throw Exception::driverException($this$e);
  28.         }
  29.         return $conn;
  30.     }
  31.     /**
  32.      * Constructs the MySql PDO DSN.
  33.      *
  34.      * @param mixed[] $params
  35.      *
  36.      * @return string The DSN.
  37.      */
  38.     protected function constructPdoDsn(array $params)
  39.     {
  40.         $dsn 'mysql:';
  41.         if (isset($params['host']) && $params['host'] !== '') {
  42.             $dsn .= 'host=' $params['host'] . ';';
  43.         }
  44.         if (isset($params['port'])) {
  45.             $dsn .= 'port=' $params['port'] . ';';
  46.         }
  47.         if (isset($params['dbname'])) {
  48.             $dsn .= 'dbname=' $params['dbname'] . ';';
  49.         }
  50.         if (isset($params['unix_socket'])) {
  51.             $dsn .= 'unix_socket=' $params['unix_socket'] . ';';
  52.         }
  53.         if (isset($params['charset'])) {
  54.             $dsn .= 'charset=' $params['charset'] . ';';
  55.         }
  56.         return $dsn;
  57.     }
  58.     /**
  59.      * {@inheritdoc}
  60.      *
  61.      * @deprecated
  62.      */
  63.     public function getName()
  64.     {
  65.         return 'pdo_mysql';
  66.     }
  67. }