From: gmarzin at club-internet dot fr Operating system: win32 PHP version: 4CVS-2006-02-17 (snap) PHP Bug Type: Scripting Engine problem Bug description: ReflectionProperty getDeclaringClass
Description: ------------ Before 5.1.3, ReflectionProperty->getDeclaringClass was working ok. Exactly like ReflectionMethod->getDeclaringClass: the reflectionClass could be an ancester. Actually, with 5.1.3 ReflectionMethod work OK, but ReflectionProperty do not give back the ancesters classes. Reproduce code: --------------- <?php class ancester { public $ancester = 0; function ancester() { return $this->ancester; } } class foo extends ancester { public $bar = "1"; function foo() { return $this->bar; } } $r = new ReflectionClass('foo'); $prop = $r->GetProperties(); foreach ($prop as $p) { $owner = $p->getDeclaringClass(); echo $p->getName(). " <b>". $owner->getName()."</b><br/>"; } $methode = $r->GetMethods(); foreach ($methode as $m) { $owner = $m->getDeclaringClass(); echo $m->getName(). " <b>". $owner->getName()."</b><br/>"; } ?> Expected result: ---------------- bar foo ancester ancester foo foo ancester ancester Actual result: -------------- bar foo ancester foo (expecting "ancester") foo foo ancester ancester -- Edit bug report at http://bugs.php.net/?id=36434&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=36434&r=trysnapshot44 Try a CVS snapshot (PHP 5.1): http://bugs.php.net/fix.php?id=36434&r=trysnapshot51 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=36434&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=36434&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=36434&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=36434&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=36434&r=needscript Try newer version: http://bugs.php.net/fix.php?id=36434&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=36434&r=support Expected behavior: http://bugs.php.net/fix.php?id=36434&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=36434&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=36434&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=36434&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=36434&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=36434&r=dst IIS Stability: http://bugs.php.net/fix.php?id=36434&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=36434&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=36434&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=36434&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=36434&r=mysqlcfg