Ale*_*lex 7 php variables static class public
我正在尝试声明一个公共静态变量,它是一个数组数组:
class Foo{
public static $contexts = array(
'a' => array(
'aa' => something('aa'),
'bb' => something('bb'),
),
'b' => array(
'aa' => something('aa'),
'bb' => something('bb'),
),
);
// methods here
}
function something($s){
return ...
}
Run Code Online (Sandbox Code Playgroud)
但我收到一个错误:
解析错误:解析错误,期待'')''...
dec*_*eze 10
声明类属性时不能使用表达式.即你不能something() 在这里打电话,你只能使用静态值.您必须在某些时候在代码中以不同方式设置这些值.
与任何其他PHP静态变量一样,静态属性只能使用文字或常量初始化; 表达式是不允许的.因此,虽然您可以将静态属性初始化为整数或数组(例如),但您可能不会将其初始化为另一个变量,函数返回值或对象.
例如:
class Foo {
public static $bar = null;
public static function init() {
self::$bar = array(...);
}
}
Foo::init();
Run Code Online (Sandbox Code Playgroud)
或者,__construct如果您要实例化该类,请执行此操作.
| 归档时间: |
|
| 查看次数: |
21074 次 |
| 最近记录: |