Как я могу получить список статических переменных в классе?

С классом типа

class MyClass {
    static var1 = "a";
    static var2 = "b";
}

... Я хотел бы получить статические члены и их значения во время выполнения; что-то вроде

Array(
    "var1" => "a",
    "var2" => "b"
)

Есть ли способ сделать это в PHP?

Ответ 1

Вы можете использовать ReflectionClass::getStaticProperties(), чтобы сделать это:

$class = new ReflectionClass('MyClass');
$arr = $class->getStaticProperties();
Array
(
    [var1] => a
    [var2] => b
)