2006-10-02 12:16:35 +00:00
|
|
|
--TEST--
|
|
|
|
Bug #39001 (ReflectionProperty returns incorrect declaring class for protected properties)
|
2007-04-12 12:29:48 +00:00
|
|
|
--SKIPIF--
|
|
|
|
<?php extension_loaded('reflection') or die('skip'); ?>
|
2006-10-02 12:16:35 +00:00
|
|
|
--FILE--
|
|
|
|
<?php
|
|
|
|
|
|
|
|
class Meta {
|
|
|
|
}
|
|
|
|
|
|
|
|
class CParent extends Meta {
|
|
|
|
public $publicVar;
|
|
|
|
protected $protectedVar;
|
|
|
|
}
|
|
|
|
|
|
|
|
class Child extends CParent {
|
|
|
|
}
|
|
|
|
|
|
|
|
$r = new ReflectionClass('Child');
|
|
|
|
|
|
|
|
var_dump($r->getProperty('publicVar')->getDeclaringClass()->getName());
|
|
|
|
var_dump($r->getProperty('protectedVar')->getDeclaringClass()->getName());
|
|
|
|
|
|
|
|
echo "Done\n";
|
|
|
|
?>
|
|
|
|
--EXPECTF--
|
|
|
|
string(7) "CParent"
|
|
|
|
string(7) "CParent"
|
|
|
|
Done
|