Файл: concrete5.7.5.6/concrete/src/Database/Driver/PDOMySqlConcrete5/Driver.php
Строк: 54
<?php
namespace ConcreteCoreDatabaseDriverPDOMySqlConcrete5;
use ConcreteCoreDatabaseConnectionPDOConnection;
/**
* PDO MySql driver.
*
* @since 2.0
*/
class Driver extends DoctrineDBALDriverPDOMySqlDriver
{
public function connect(array $params, $username = null, $password = null, array $driverOptions = array())
{
$conn = new PDOConnection(
$this->_constructPdoDsn($params),
$username,
$password,
$driverOptions
);
return $conn;
}
/**
* Constructs the MySql PDO DSN.
*
* @param array $params
*
* @return string The DSN.
*/
private function _constructPdoDsn(array $params)
{
$dsn = 'mysql:';
if (isset($params['host']) && $params['host'] != '') {
$dsn .= 'host=' . $params['host'] . ';';
}
if (isset($params['port'])) {
$dsn .= 'port=' . $params['port'] . ';';
}
if (isset($params['database'])) {
$dsn .= 'dbname=' . $params['database'] . ';';
}
if (isset($params['unix_socket'])) {
$dsn .= 'unix_socket=' . $params['unix_socket'] . ';';
}
if (isset($params['charset'])) {
$dsn .= 'charset=' . $params['charset'] . ';';
}
return $dsn;
}
}