diff --git a/src/Dibi/Drivers/FirebirdDriver.php b/src/Dibi/Drivers/FirebirdDriver.php index a771da95..13361da4 100644 --- a/src/Dibi/Drivers/FirebirdDriver.php +++ b/src/Dibi/Drivers/FirebirdDriver.php @@ -96,7 +96,7 @@ class FirebirdDriver implements Dibi\Driver, Dibi\ResultDriver, Dibi\Reflector */ public function disconnect() { - ibase_close($this->connection); + @ibase_close($this->connection); // @ - connection can be already disconnected } diff --git a/src/Dibi/Drivers/MsSqlDriver.php b/src/Dibi/Drivers/MsSqlDriver.php index daf2b3f9..0713daef 100644 --- a/src/Dibi/Drivers/MsSqlDriver.php +++ b/src/Dibi/Drivers/MsSqlDriver.php @@ -78,7 +78,7 @@ class MsSqlDriver implements Dibi\Driver, Dibi\ResultDriver */ public function disconnect() { - mssql_close($this->connection); + @mssql_close($this->connection); // @ - connection can be already disconnected } diff --git a/src/Dibi/Drivers/MySqlDriver.php b/src/Dibi/Drivers/MySqlDriver.php index 4b812ebd..976d0279 100644 --- a/src/Dibi/Drivers/MySqlDriver.php +++ b/src/Dibi/Drivers/MySqlDriver.php @@ -139,7 +139,7 @@ class MySqlDriver implements Dibi\Driver, Dibi\ResultDriver */ public function disconnect() { - mysql_close($this->connection); + @mysql_close($this->connection); // @ - connection can be already disconnected } diff --git a/src/Dibi/Drivers/MySqliDriver.php b/src/Dibi/Drivers/MySqliDriver.php index 511b4e7c..060fc7ad 100644 --- a/src/Dibi/Drivers/MySqliDriver.php +++ b/src/Dibi/Drivers/MySqliDriver.php @@ -138,7 +138,7 @@ class MySqliDriver implements Dibi\Driver, Dibi\ResultDriver */ public function disconnect() { - mysqli_close($this->connection); + @mysqli_close($this->connection); // @ - connection can be already disconnected } diff --git a/src/Dibi/Drivers/OdbcDriver.php b/src/Dibi/Drivers/OdbcDriver.php index 85f46c6b..33fa3a20 100644 --- a/src/Dibi/Drivers/OdbcDriver.php +++ b/src/Dibi/Drivers/OdbcDriver.php @@ -88,7 +88,7 @@ class OdbcDriver implements Dibi\Driver, Dibi\ResultDriver, Dibi\Reflector */ public function disconnect() { - odbc_close($this->connection); + @odbc_close($this->connection); // @ - connection can be already disconnected } diff --git a/src/Dibi/Drivers/OracleDriver.php b/src/Dibi/Drivers/OracleDriver.php index 17607019..921972bd 100644 --- a/src/Dibi/Drivers/OracleDriver.php +++ b/src/Dibi/Drivers/OracleDriver.php @@ -95,7 +95,7 @@ class OracleDriver implements Dibi\Driver, Dibi\ResultDriver, Dibi\Reflector */ public function disconnect() { - oci_close($this->connection); + @oci_close($this->connection); // @ - connection can be already disconnected } diff --git a/src/Dibi/Drivers/PostgreDriver.php b/src/Dibi/Drivers/PostgreDriver.php index 95a6c34e..f0d84552 100644 --- a/src/Dibi/Drivers/PostgreDriver.php +++ b/src/Dibi/Drivers/PostgreDriver.php @@ -111,7 +111,7 @@ class PostgreDriver implements Dibi\Driver, Dibi\ResultDriver, Dibi\Reflector */ public function disconnect() { - pg_close($this->connection); + @pg_close($this->connection); // @ - connection can be already disconnected } diff --git a/src/Dibi/Drivers/SqlsrvDriver.php b/src/Dibi/Drivers/SqlsrvDriver.php index c5f1d4f1..2ccd1732 100644 --- a/src/Dibi/Drivers/SqlsrvDriver.php +++ b/src/Dibi/Drivers/SqlsrvDriver.php @@ -99,7 +99,7 @@ class SqlsrvDriver implements Dibi\Driver, Dibi\ResultDriver */ public function disconnect() { - sqlsrv_close($this->connection); + @sqlsrv_close($this->connection); // @ - connection can be already disconnected } diff --git a/tests/dibi/Connection.connect.phpt b/tests/dibi/Connection.connect.phpt index 4a821b12..16da29f4 100644 --- a/tests/dibi/Connection.connect.phpt +++ b/tests/dibi/Connection.connect.phpt @@ -36,3 +36,15 @@ test(function () use ($config) { // query string Assert::same($config['driver'], $conn->getConfig('driver')); Assert::type('Dibi\Driver', $conn->getDriver()); }); + + +test(function () use ($config) { + $conn = new Connection($config); + Assert::true($conn->isConnected()); + + $conn->disconnect(); + Assert::false($conn->isConnected()); + + $conn->disconnect(); + Assert::false($conn->isConnected()); +});