ReflectionClass::getProperty
(PHP 5, PHP 7, PHP 8)
ReflectionClass::getProperty — 获取类的一个属性的 ReflectionProperty
说明
获取类的一个属性的 ReflectionProperty。
参数
-
name
-
属性名。
返回值
范例
示例 #1 ReflectionClass::getProperty() 的基本用法
<?php
$class = new ReflectionClass('ReflectionClass');
$property = $class->getProperty('name');
var_dump($property);
?>
以上例程会输出:
object(ReflectionProperty)#2 (2) { ["name"]=> string(4) "name" ["class"]=> string(15) "ReflectionClass" }

User Contributed Notes 2 notes
eric at naeseth dot com ¶
10 years ago
If the class doesn't have a property with the given name, a ReflectionException will be raised.
dohpaz42 ¶
7 years ago
Accessing private properties is possible, but care must be taken if that private property was defined lower into the inheritance chain. For example, if class A extends class B, and class B defines a private property called 'foo', getProperty will throw a ReflectionException.
Instead, you can loop over getParentClass until it returns false to look for the private property, at which point you can access and/or modify its value as needed.
备份地址:http://www.lvesu.com/blog/php/reflectionclass.getproperty.php