2012-06-18 41 views
0

我有一个类,我写的所有的值,比如一个枚举行动:“枚举”类,得到

abstract class Enum { 
    const VAL1 = "Val1"; 
    const VAL2 = "Val2"; 
} 

我要定义一个静态函数将返回类的所有成员不变,但我能找到的唯一函数就是ReflectionClass :: getStaticProperties。不幸的是,它看起来并不像我可以这样使用它。我的理解是常量是隐式静态的,但函数忽略它们。有没有一种方法,我没有发现,将以类似的方式给我一个常量的数组?

+0

可能重复[?我能得到CONST对PHP类定义(http://stackoverflow.com/questions/956401/can-i-get-consts -defined-on-a-php-class) – Joey

回答

0

您可以使用Reflection

<?php 
class Enum { 
    const VAL1 = "Val1"; 
    const VAL2 = "Val2"; 
} 


$refl = new ReflectionClass('Enum'); 
print_r($refl->getConstants()); 

输出:

Array 
(
    ['VAL1'] => Val1 
    ['VAL2'] => Val2 
)