dbpdo.php 1004 B

1234567891011121314151617181920212223242526272829303132333435
  1. <?php
  2. /**
  3. * 数据库pdo连接
  4. */
  5. class DBPDO
  6. {
  7. private static $pdo;
  8. private function __construct()
  9. {
  10. //code
  11. }
  12. private function __clone()
  13. {
  14. //code
  15. }
  16. /**
  17. * 获取实例化的PDO,单例模式
  18. * @return PDO
  19. */
  20. public static function getInstance($dbConf)
  21. {
  22. if (!(self::$pdo instanceof PDO)) {
  23. $dsn = "mysql:host=" . $dbConf['host'] . ";port=" . $dbConf['port'] . ";dbname=" . $dbConf['dbname'] . ";charset=" . $dbConf['charset'];
  24. try {
  25. self::$pdo = new PDO($dsn, $dbConf['username'], $dbConf['password']); // , array(PDO::ATTR_PERSISTENT => true, PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8")); // 保持长连接
  26. self::$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
  27. } catch (PDOException $e) {
  28. print "Error:" . $e->getMessage() . "<br/>";
  29. die();
  30. }
  31. }
  32. return self::$pdo;
  33. }
  34. }