我试图从静态方法中获取类常量列表。
public static function example()
{
$reflection = new \ReflectionClass(get_called_class());
var_dump($reflection -> getConstants());
}
引发Fatal error: Cannot access self:: when no class scope is active
有没有办法让这个工作,或者我是否违反了php的另一种语言限制?
答案 0 :(得分:0)
我刚刚尝试过您的代码,它可以正常运行您的实际课程示例吗?
class test23 {
const te = 'asd';
var $ya = 'hoopla';
public static function example()
{
$reflection = new ReflectionClass(get_called_class());
var_dump($reflection -> getConstants());
}
}
test23::example();
返回array(1) { ["te"]=> string(3) "asd" }
答案 1 :(得分:-2)
// creates a reflection class object
$reflection = new ReflectionClass ( $this );
//gets all the constants of the current class
$consts = $reflection->getConstants ();
希望它有所帮助。