获取所有对象变量的列表,而不管修饰符PHP

Mik*_*ike 0 php oop

我想得到一个类中所有变量的数组,包括私有变量,而不必实例化该对象.我知道php的get_class_vars(),但它只显示范围内的变量.我从类外面调用它,所以隐藏了所有私有变量.

我的目的是创建一个包含列出的每个对象的所有变量的页面,我不想实例化每个对象,因为它们都需要不同的标识符来实例化,我希望避免将一堆id传递给如果可能的话.

请注意,变量的值不重要,我只想要变量名.

moo*_*e99 5

使用反射,卢克.

有了ReflectionClass::getProperties,您可以获得课程的所有领域.

例如

$reflection = new ReflectionClass('YourClass');

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

    echo $field ."\n";

}
Run Code Online (Sandbox Code Playgroud)

  • 嘿,你快一点;) (2认同)