ID: 44669
Comment by: crrodriguez at suse dot de
Reported By: ob dot php at daevel dot fr
Status: Open
Bug Type: PDO related
Operating System: Debian Lenny (testing)
PHP Version: 5.2.5
New Comment:
This is the expected behaviuor, objects are destroyed at script
shutdown.
Previous Comments:
------------------------------------------------------------------------
[2008-04-08 08:58:57] ob dot php at daevel dot fr
Description:
------------
Hello,
when catching a connection error in a class extending PDO, the object
is not destroyed before end of script.
It's really not a big bug, but as the instance is not usable (no
instance is returned at all) it should be destroyed no ?
Reproduce code:
---------------
<?php
class PDOtest extends PDO
{
public function __construct( $dsn, $user, $password )
{
try
{
parent::__construct( $dsn, $user, $password );
} catch( PDOException $e ) {
echo 'there is an error... but continue the script',
PHP_EOL;
return;
}
}
public function __destruct()
{
echo 'DESTRUCT', PHP_EOL;
}
}
echo 'CONSTRUCT', PHP_EOL;
$test = new PDOtest( 'mysql:host=localhost;dbname=test', 'baduser',
'orpass' );
var_dump( $test );
echo 'SOME WORKS', PHP_EOL;
?>
Expected result:
----------------
CONSTRUCT
there is an error... but continue the script
DESTRUCT
NULL
SOME WORKS
Actual result:
--------------
CONSTRUCT
there is an error... but continue the script
NULL
SOME WORKS
DESTRUCT
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=44669&edit=1