ID: 30642
User updated by: keith dot ward at gmail dot com
Reported By: keith dot ward at gmail dot com
-Status: Bogus
+Status: Open
Bug Type: Class/Object related
Operating System: *
PHP Version: 5.*
Assigned To: helly
New Comment:
This is NOT BOGUS , had you bothered to read the results , you would
see that var_dump , did indeed return the static member myvar( from
class A ) .
If returning static members with var_dump was not to be supported
(that's what it sounds like) it should not show up in the first
var_dump either !.
In Addition ... using echo parent::$myvar; or echo $this->myvar within
class B , also returns nothing . So this bug is perfectly valid .
Previous Comments:
------------------------------------------------------------------------
[2004-11-01 11:51:48] [EMAIL PROTECTED]
var_dump() doesn't show static members.
And don't reopen this report - check your code
------------------------------------------------------------------------
[2004-11-01 04:53:01] keith dot ward at gmail dot com
Description:
------------
When using extend to extend a class . Static variables are not
inherited .
Reproduce code:
---------------
class a
{
public static $myvar;
public function __construct()
{
$this->myvar = '1';
echo ' Set myvar to 1 ... ' . "\n";
var_dump($this);
}
}
$a = new a();
class b extends a
{
function __construct()
{
echo 'DUmping from class b' . "\n";
var_dump($this);
}
}
$a = new b();
?>
Expected result:
----------------
Set myvar to 1 ...
object(a)#1 (1) {
["myvar"]=>
string(1) "1"
}
Dumping from class b
object(b)#2 (1) {
["myvar"]=>
string(1) "1"
}
Actual result:
--------------
Set myvar to 1 ...
object(a)#1 (1) {
["myvar"]=>
string(1) "1"
}
Dumping from class b
object(b)#2 (0) {
}
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=30642&edit=1