mysql.php 728 B

12345678910111213141516171819202122232425262728293031323334353637
  1. <?php namespace Laravel\Database\Connector;
  2. use Laravel\Database\Connector;
  3. class MySQL extends Connector {
  4. /**
  5. * Establish a PDO database connection.
  6. *
  7. * @param array $config
  8. * @return PDO
  9. */
  10. public function connect($config)
  11. {
  12. $dsn = $config['driver'].':host='.$config['host'].';dbname='.$config['database'];
  13. if (isset($config['port']))
  14. {
  15. $dsn .= ';port='.$config['port'];
  16. }
  17. if (isset($config['socket']))
  18. {
  19. $dsn .= ';unix_socket='.$config['socket'];
  20. }
  21. $connection = new \PDO($dsn, $config['username'], $config['password'], $this->options);
  22. if (isset($config['charset']))
  23. {
  24. $connection->prepare("SET NAMES '".$config['charset']."'")->execute();
  25. }
  26. return $connection;
  27. }
  28. }