如果您正在反射一个对象并获取已设置但未在任何类中声明的属性的声明类,它将返回实例的类。
<?php
class X {
}
$x = new X();
$x->foo = 'bar';
$reflection = new ReflectionObject($x);
echo $reflection->getProperty('foo')->getDeclaringClass()->getName(); // X
?>
(PHP 5, PHP 7, PHP 8)
ReflectionProperty::getDeclaringClass — 获取声明类
此函数没有参数。
一个 ReflectionClass 对象。
如果您正在反射一个对象并获取已设置但未在任何类中声明的属性的声明类,它将返回实例的类。
<?php
class X {
}
$x = new X();
$x->foo = 'bar';
$reflection = new ReflectionObject($x);
echo $reflection->getProperty('foo')->getDeclaringClass()->getName(); // X
?>