ID: 29780
User updated by: d dot khan at ventigo dot com
Reported By: d dot khan at ventigo dot com
-Status: Feedback
+Status: Open
Bug Type: Zend Engine 2 problem
Operating System: Linux (Gentoo)
PHP Version: 5.0.1
New Comment:
You example works - mine doesn't. It seems to be an oddity with
extensions...
Example code:
<?php
class test extends stdClass {
function __construct() {
echo 'Called in child';
}
}
$test = new test;
Class rltxPDO extends PDO {
function __construct() {
echo 'Called in child 2';
}
}
$test2 = new rltxPDO;
?>
Output:
Called in child
Warning: PDO::__construct() expects at least 1 parameter, 0 given in
/home/shares/development/khan/wandern/html/test.php on line 19
Previous Comments:
------------------------------------------------------------------------
[2004-08-23 18:20:12] [EMAIL PROTECTED]
This code:
<?
class test extends stdClass {
function __construct() {
echo 'Called in child';
}
}
$test = new test;
?>
works fine and outputs 'Called in child' for me.
Please, check it one more time and/or try newer snapshot.
------------------------------------------------------------------------
[2004-08-21 11:58:01] d dot khan at ventigo dot com
Description:
------------
Hello,
maybe this is bogus but I found a situation where the OOP engine
doesn't behave as - at least I - would expect.
I tried to extend the PDO extension and my local construct method isn't
called.
The engine always calls the parent construct method.
Greetings
Daniel Khan
Reproduce code:
---------------
Class rltxPDO extends PDO {
function __construct() {
echo 'Called in child';
}
public static function instance() {
static $instance;
if (!$instance) {
$instance = new rltxPDO();
}
return $instance;
}
}
Expected result:
----------------
Output: Called in child
Actual result:
--------------
Warning: PDO::__construct() expects at least 1 parameter, 0 given
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=29780&edit=1