Pet*_*ter 3 php oop function literals
请看一下这段代码:
$array = array(
'action' => function () { echo "this works"; }
);
class Test {
public $array = array(
"action" => function () { echo "this doesn't"; }
);
}
Run Code Online (Sandbox Code Playgroud)
第一个函数literal解析正常,但第二个 - 类中的一个 - 触发语法错误:
解析错误:语法错误,意外'功能'(T_FUNCTION)...
有人可以向我解释一下吗?这是一个错误吗?
编辑:这是最新的PHP:5.6.6
从课堂上来看它是一个属性!
来自物业的规则:
声明可能包括初始化,但此初始化必须是常量值 - 也就是说,它必须能够在编译时进行评估,并且必须不依赖于运行时 信息才能进行评估.
http://php.net/manual/en/language.oop5.properties.php