ID: 45743
Updated by: [email protected]
Reported By: ilewis at uk dot ibm dot com
-Status: Open
+Status: Feedback
-Bug Type: Reflection related
+Bug Type: Scripting Engine problem
Operating System: Fedora 8
PHP Version: 5.3CVS-2008-08-07 (snap)
New Comment:
Send patches in unified diff format. (diff -u)
Previous Comments:
------------------------------------------------------------------------
[2008-08-07 09:57:20] ilewis at uk dot ibm dot com
Description:
------------
property_exists() doesn't find a member in a child class when the
member is static and protected.
The code below shows that the member is accessible and should be found
by property_exists.
I've created a patch which I think fixes this, and put it here:
http://pastebin.com/m272f815c
The patch was built against a CVS snap from today:
php5.3-200808070630
Reproduce code:
---------------
<?php
class aParent {
public static function staticTest() {
var_dump(property_exists("A", "prot"));
var_dump(A::$prot);
}
}
class A extends aParent { protected static $prot = "prot"; }
echo "\nparent scope:\n";
aParent::staticTest();
?>
Expected result:
----------------
parent scope:
bool(true)
string(4) "prot"
Actual result:
--------------
parent scope:
bool(false)
string(4) "prot"
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=45743&edit=1
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.