エラーケース
- 入力値の検査違反
- データベースの整合性違反
- 外部リソースへの接続障害
など
エラーが発生した時の処理(エラーハンドリング)
- エラーレスポンスの送信
- ログへの記録
- メールでの通知
など
エラー表示
開発環境
- 画面にエラー詳細が表示される
- アプリケーションの情報が公開されてしまう
- 本番環境など外部に公開する場合はまずい
エラー表示の設定
<?php config/app.php APP_DEBUG true //表示(開発環境) APP_DEBUG false //非表示(本番環境)
エラーハンドリングの詳細
アプリケーションで発生したエラー
ハンドリング(catch)されなければAPP\Exceptions\Handlerクラスがハンドリングする
APP\Exceptions\Handlerクラス
reportメソッド
- 例外をログに記録(クラス単位で記録対象外にすることも可能)
renderメソッド
- エラー発生時のHTTPレスポンスもしくはエラーページ(ビューテンプレート)を出力する