Php Klein$这不在范围内

Php Klein$这不在范围内,php,model-view-controller,twig,Php,Model View Controller,Twig,我在索引文件中设置了Klein控制器,我已验证.htaccess是否通过索引文件路由所有内容: foreach(array('admin', 'api') as $controller) { // Include all routes defined in a file under a given namespace $klein->with("/$controller", "$controller.php"); } 在a

我在索引文件中设置了Klein控制器,我已验证.htaccess是否通过索引文件路由所有内容:

     foreach(array('admin', 'api') as $controller) {
         // Include all routes defined in a file under a given namespace
         $klein->with("/$controller", "$controller.php");
     }     
在admin.php和api.php文件中,我试图访问变量$this,如下所示:

      $this->respond('GET', '/phpinfo', function () {
           phpinfo();
      });
但当执行此操作时,我得到:致命错误:在不在对象上下文中的情况下使用$this…


有人知道如何解决这个问题吗?它在我的本地开发服务器上工作,但在我部署它时不起作用。有没有办法解决这个问题,我相信它可能必须按照部署服务器的配置方式进行,但我不确定它是什么。

您在没有
$this->respond()
的地方调用
$this
,所以不是在
对象上下文中,而是在index.php或其他地方。尝试使用
$variableNameOfObject->respond()
我认为$klein->with-code应该将引用作为$this传递,因为我在本地服务器上得到一个对象(klein\klein),但在部署服务器上为NULL(我无法更改那里的任何配置变量)。