2012-05-02 124 views
0

我有一个由子类扩展的抽象类。PHP:获取父类属性值

我需要从抽象类中的方法中检索抽象类的所有属性及其值的数组。

有没有一种简单的方法比这个代码来做到这一点其他:

$options = get_object_vars($this); 
foreach ($options as $var => $value) { 
    if (!property_exists(get_class(), $var)) { 
     unset($options[$var]); 
    } 
} 

get_object_vars($this)回报所有属性和它们的值,但包括子类的属性 - 我不想要的。

+0

是'get_class_vars(__ CLASS __)'一个选择? – Zombaya

+0

谢谢,但这只获得属性名称,而不是它们的值 – Sjwdavies

+0

嗯,但是如果你有名字,你应该能够得到它们的值。 – Zombaya

回答

0
$options = get_class_vars(get_class()); 

foreach($options as $key=>$val) 
    echo $key . " : " . $val . " => " . $this->$key; 

这会给的输出作为

PROPERTYNAME:standardvalue =>动态值

+0

谢谢 - 但抽象类的目的是创建一个WebService连接,所以我需要动态值 – Sjwdavies

+0

动态值添加到答案 – Zombaya