假设我有一个静态字段$b
,它依赖于另一个先前定义的静态字段$a
的值。当我这样做......
class Foo {
private static $a = "Hello";
private static $b = self::$a . " World"; // Error
...
}
...它给我一个语法错误。有没有办法做到这一点?
答案 0 :(得分:1)
documentation解释了为什么这不起作用:
与任何其他PHP静态变量一样,静态属性只能使用文字或常量初始化;表达式是不允许的。因此,虽然您可以将静态属性初始化为整数或数组(例如),但您可能不会将其初始化为另一个变量,函数返回值或对象。