PHP OOP MVC致命错误:不在对象上下文中使用$this

PHP OOP MVC致命错误:不在对象上下文中使用$this,php,scope,Php,Scope,所以我一直在四处寻找,但似乎与我的问题无关 我有一个MVC,有一些控制器和一些工具,比如会话处理 session类由非静态方法组成,在我的控制器中,我正在实例化session类,如下所示: public $sessions; public function __construct () { $this->sessions = new Session(); } 然而,当我从控制器中的方法调用它时,它返回臭名昭著的“在不在对象上下文中时使用$this”。这对我来说毫无意义 publ

所以我一直在四处寻找,但似乎与我的问题无关

我有一个MVC,有一些控制器和一些工具,比如会话处理

session类由非静态方法组成,在我的控制器中,我正在实例化session类,如下所示:

public $sessions;
public function __construct () {
     $this->sessions = new Session();
}
然而,当我从控制器中的方法调用它时,它返回臭名昭著的“在不在对象上下文中时使用$this”。这对我来说毫无意义

public function index() {
     $this->sessions->get('sessionToGet');
}

这将返回错误。

好的,我认为这是我如何编写的错误。我提出了一个更好的解决方案,它使我能够在会话包装器上切换到静态调用


修复了我的问题,现在它至少运行得很好。

发布完整的类代码(除了不相关的方法),此代码看起来是正确的。我能想到的一件事是没有调用构造函数。可能是因为您的控制器类是基类。请尝试包含父项::_construct();//请验证语法