PHP 类常量数组转换
Posted
技术标签:
【中文标题】PHP 类常量数组转换【英文标题】:PHP Class Constants Array Cast 【发布时间】:2012-04-07 09:53:45 【问题描述】:为了在 php 中模拟枚举,我喜欢使用类常量。
例如
class FRUIT
const apple = 1;
const orange = 2;
const lemon = 3;
const pear = 4;
;
我有一个案例,我想将此类转换为数组以填充选择列表。但是,由于类常量的行为静态转换不起作用,例如(array)(new FRUIT());
也没有 get_object_vars()
方法。
解决这个问题的最佳方法是什么?我是否需要创建一个内部函数来迭代常量并返回一个数组?
【问题讨论】:
【参考方案1】:我需要创建一个内部函数来迭代常量并返回一个数组吗?
不!您可以使用反射来做到这一点:
$r = new ReflectionClass('FRUIT');
$constants = $r->getConstants();
更多信息here
【讨论】:
以上是关于PHP 类常量数组转换的主要内容,如果未能解决你的问题,请参考以下文章