字符串连接与常量

时间:2016-06-23 10:15:11

标签: php constants php-5.4

我目前的主机上只有PHP 5.4,我的代码中总是会遇到类常量错误。显然,它不允许定义数组常量。我将常量更改为静态变量以使其工作。现在我得到这个语法错误:

    syntax error, unexpected '.', expecting ']'

我尝试定义由连接常量组成的字符串。

public static $arr = [KEY_ONE => "string " . MyClass::CONSTANT . " string"]

这是可能的,还是现在所有常量都必须是静态变量?

2 个答案:

答案 0 :(得分:2)

在变量声明中,您无法进行操作。无论是串联还是数学运算。

您可以在构造方法中执行此操作;

public static $arr = [];

public function __construct(){
  self::$arr = [KEY_ONE => "string " . MyClass::CONSTANT . " string"];
}

答案 1 :(得分:0)

如果您正在尝试使用这样的数组:

public static $arr = array("KEY_ONE" => "string " . MyClass::CONSTANT . " string");