Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用ReflectionClass读取类属性_Php - Fatal编程技术网

Php 使用ReflectionClass读取类属性

Php 使用ReflectionClass读取类属性,php,Php,我试图通过ReflectionClass 现在的问题是tradingMarket是tradingMarket类的一个实例。 如果一个变量是Object,那么我想调用该对象上的a函数,该函数也返回该类的属性 class Certificate { private $isin; private $tradingMarket; private $currency; private $issuer; private $issuingPrice;

我试图通过
ReflectionClass
现在的问题是
tradingMarket
tradingMarket
类的一个实例。 如果一个变量是Object,那么我想调用该对象上的a函数,该函数也返回该类的属性

class Certificate {
      private $isin;
      private $tradingMarket;
      private $currency;
      private $issuer;
      private $issuingPrice;
      private $currentPrice;
      private $priceHistory;
      private $documents;
      private $serializer;
}
您可以使用递归(未测试):


从您前面的两个问题判断,您的证书具有这些属性的getter,那么为什么现在需要对其进行反射呢?
function getProperties($object) {
    $ref = new ReflectionClass(get_class($object));
    foreach ($reg->getProperties(ReflectionProperty::IS_PUBLIC | ReflectionProperty::IS_PROTECTED | ReflectionProperty::IS_PRIVATE) as $prop) {
        if (is_object($prop->getValue($object)) getProperties($prop->getValue($object));
        else echo get_class($object)." => ".$prop->getName();
    }
}