【发布时间】:2011-04-14 12:43:13
【问题描述】:
可能重复:
From the string name of a class, can I get a static variable?
在父类的某个地方,我需要找到一个可能的子类的静态变量的值,由当前实例确定。
我写道:
$class = get_class($this);
$value = isset($class::$foo['bar']) ? $class::$foo['bar'] : 5;
在此示例中,名称在 $class 中的子类具有公共静态 $foo。
我知道使用 $class::$foo['bar'] 不是一段非常漂亮的代码,但它可以在 PHP 5.3.4 上完成工作。
但在 PHP 5.2.6 中,我收到了一个语法错误:
解析错误:语法错误,意外的 T_PAAMAYIM_NEKUDOTAYIM,期待 ',' 或 ')'
是否有另一种方法可以在 PHP 5.2.4+ 上完成相同的工作?
【问题讨论】:
-
好收获。使用那里提供的解决方案修复它。
-
嗯,原来的评论被删除了。通过“那里提供的解决方案”,我指的是这是一个重复的问题。见上面的链接。
-
这种类型的 cmets 是在有人投票关闭问题作为重复问题时自动创建的。如果问题已关闭,则评论将被删除,并且链接将添加到问题的顶部,正如您已经看到的那样...
-
是的,我刚刚发现。当我投票结束我自己的问题(即举起最后一根稻草)时,自动评论消失了,我的“回复”看起来毫无用处。感谢您的解释。
标签: php static-variables