2017-01-23 22 views
0

我可以更改中間件中的設置嗎? 我想完成的是根據路線更改錯誤處理引擎。 對於某些路線,我希望在HTML中顯示錯誤,並將某些(ajax)錯誤顯示爲JSON。 我認爲中間件是正確的地方,但如何更改設置?Slim - 在中間件中更改設置

回答

1

您可以通過覆蓋在容器中的錯誤處理程序鍵來更改錯誤處理程序:

$app->add(function($req, $res, $next){ 
    //$this is an instance of Slim\Container 
    $this['errorHandler'] = new SomeErrorHandler(); 

    return $next($req, $res); 
}); 
+1

你不需要$這個 - > getContainer()爲您的評論說,$這其實是不容器Slim \ App ...你只需要使用$ this-> get('') – geggleto