PDO PHP的连接有多接近?

时间:2016-05-17 15:14:12

标签: php mysql pdo

我正在尝试关闭班级中的连接,我想知道它是否正确。

我的公共功能disconnect();密切联系。

班级联系:

<?php

class Connection{

   private static $instance;

   public static function getInstance(){

      if (!isset(self::$instance)) {

        try {
            self::$instance = new PDO(DB_DRIVE . ':host=' . DB_HOST . ';dbname=' . DB_NAME, DB_USER, DB_PASS);
            self::$instance->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
            self::$instance->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);

        } catch (PDOException $exception) {
            echo $exception->getMessage();
        }

      }

      return self::$instance;

   }

   public static function prepare($sql){
      return self::getInstance()->prepare($sql);
   }

   public static function lastInsertId($sql){
      return self::getInstance()->lastInsertId($sql);
   }

   public function disconnect(){
      return self::$instance = null;
   }

}

执行后我在脚本中使用了这个:

<?php
$connectionDb = new Connection();
$connectionDb->disconnect();

是对的吗?

1 个答案:

答案 0 :(得分:-1)

<强>您好,

我不知道您使用的是哪个版本,但应该根据手册:

$ database-&gt; close()或$ recordset-&gt; close()

所以在你的情况下

self::$instance->close();

你可以用

进行测试
self::$instance->isConnected();

祝你好运 Axel Arnold Bangert - Herzogenrath 2016