可能重复:
Initializing PHP class property declarations with simple expressions yields syntax error
我不想在每个方法中实例化我的会话对象。为什么我不能这样做:
class Foo {
public $session = Session::instance();
public function bar() {
// Pass success message in session
$this->session('message', 'Success');
}
}
我得到的错误:
[ Parse Error ]: syntax error, unexpected '(', expecting ',' or ';'
答案 0 :(得分:0)
PHP不允许您在类定义中使用表达式(在许多语言的类定义中是标准的)。你可以做几件事:
public function __construct() {
$this->session = Session::instance();
}
//Dependency Injection
public function __construct(Session $session) {
$this->session = $session;
}