为什么我不能使用vqmod在OpenCart中的控制器中使用__construct方法

Str*_*ren 0 php opencart

我试过向__construct模块控制器添加一个空方法.

致命错误:在第16行的/var/www/rodebutik.dk/public_html/wb/vqmod/vqcache/vq2-system_engine_controller.php中调用非对象的成员函数get()

第16行:

public function __get($key) {
    return $this->registry->get($key);
}
Run Code Online (Sandbox Code Playgroud)

dec*_*eze 7

最可能的解释是:原始构造函数正在设置$this->registry对象.您将覆盖构造函数,该构造函数现在不再设置该对象.因此:当代码尝试使用不存在的预期对象时,您会出错.

如果覆盖构造函数,则还应该/需要调用原始构造函数:

public function __construct(...) {
    parent::__construct(...);

    // new code
}
Run Code Online (Sandbox Code Playgroud)