php 如何打印对象上所有静态属性的值

class A {
    public static $a = [1, 2];
    public static $b = [];
}
print_r(new A);

// 结果
A Object
(
)

必须 通过 类直接调用静态属性赋值的方式 例如:

A::$a = [1,2];
A::$b = [3, 4];

如何打印能将A对象的所有属性值显示出来呢?

阅读 3.4k
1 个回答

类的静态属性属于类,不属于类的对象,使用反射获取类的信息

class A
{
    public static $a = [1,2];
    public static $b = 1;

    public $c = 1;
    protected $d = 2;
    private $e = 3;

}

$oRef = new ReflectionClass("A");

$aStatic = $oRef->getStaticProperties();

Array
(
    [a] => Array
        (
            [0] => 1
            [1] => 2
        )

    [b] => 1
)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题