私は次のコードでレスポンスに出力されることからエラーを防止するために、フレームワークのエラーハンドラに建てを再定義する方法についてのTシャツにスリムv3のドキュメント続く:Slim v3のエラーハンドラをどのように再定義できますか?
$settings = require __DIR__ . '/../src/settings.php';
$app = new \Slim\App($settings);
// Errors to log rather than to end user
$c = $app->getContainer();
$c['errorHandler'] = function ($c) {
return function ($request, $response, $exception) use ($c) {
$c['logger']->error("Error 500 diverted: ".$exception->getMessage());
return $c['response']->withStatus(500)
->withHeader('Content-Type', 'text/html')
->write('Something went wrong on our side!');
};
};
をそして、まだ私のAPIはまだありますSlimのデフォルトのハンドラを完全なスタックトレースで吐き出して、Slim Application Error
という文字列を吐き出すと便利ですが、私はこの情報をSlimのログ(モノログ)に送り、クライアントに面していることはあまりありません。このサービスの再定義が効果的に無視される理由はありますか?
PHP7を使用していますか?だから、おそらくphpErrorHandlerが呼び出されますか? – danopz
私は、実際には!それを見てみましょう。 – phrz
https://akrabat.com/logging-errors-in-slim-3/こちらをご覧ください。 – geggleto