2012-09-28 23 views
0

我想获得一个类中所有变量的数组,包括私有变量,而不必实例化对象。我知道php的get_class_vars(),但它只显示范围内的变量。我从课堂外调用它,所以所有的私有变量都是隐藏的。获取所有对象变量的列表,而不考虑修饰符PHP

我的意图是创建一个页面,列出每个对象的所有变量,我不想实例化每个对象,因为它们都需要不同的标识符来实例化,我想避免必须通过如果可能的话,可以在页面中添加一堆ID。

请注意,变量的值是不重要的,我只想要变量名称。

+0

顺便说一句,你应该考虑[phpdoc](http://www.phpdoc.org/),然后再自行完成。 – moonwave99

回答

5

使用Reflection,卢克。

ReflectionClass::getProperties,你可以得到一个类的所有领域。

例如

$reflection = new ReflectionClass('YourClass'); 

foreach($reflection -> getProperties() as $field) 
{ 

    echo $field ."\n"; 

} 
+2

嘿,你快了一点;) –

+0

工作就像一个魅力。有没有一种方法可以在不进行一串字符串操作的情况下获取名称? – Mike

+0

什么名字? – moonwave99

相关问题