cpr*_*gcr 1 php zend-framework
我有这个代码:
protected $val = Zend_Registry::get('values');
每当我把这段代码我得到:
Parse error: syntax error, unexpected '(', expecting ',' or ';' in ...
为什么会这样?
您不能使用函数调用或其他动态表达式来初始化类属性.它只能是常数或原子值.如果需要使用函数调用对其进行初始化,则必须在构造函数中执行此操作.
protected $val = NULL;
public function __construct() {
$this->val = Zend_Registry::get('values');
}
Run Code Online (Sandbox Code Playgroud)
此声明可能包括初始化,但此初始化必须是常量值 - 也就是说,它必须能够在编译时进行评估,并且必须不依赖于运行时信息才能进行评估.