为php类const赋值

时间:2014-07-10 11:29:20

标签: php

我对oop概念一点都不好,但我试过

final class my_class
{
    const VALUE = "test";
    const VALUE1 = "test";
}

这是有效的

$some = 'test';    
final class my_class
{
    const VALUE = $some;
    const VALUE1 = "test";
}

这不起作用的原因?

1 个答案:

答案 0 :(得分:0)

因为PHP5目前不支持此功能。

如果你想要这个功能,你必须等待PHP5.6,它添加了常量标量表达式:https://wiki.php.net/rfc/const_scalar_exprs

这意味着,您可以使用常量标量表达式来定义常量 - 类似const VALUE = $var;之类的东西仍然无法正常工作。

如果你真的想定义一些运行时常量,你必须使用define()或使用runkit(runkit_constant_add)操作类