SyLフレームワークではPHPエラーが発生した場合、エラーハンドラにより独自のエラー処理を行っています。 環境によって、エラーの表示内容を変えたり、エラー画面自体を変更することも可能です。
エラーハンドラ処理は、カレントのerror_reportingとログレベルの値により変化します。 詳細は、こちらを参照してください。
エラーが発生した場合、エラーハンドリング可能な範囲のエラーであれば、カスタムのエラー画面が表示されます。(※リダイレクトではない)
カスタムのエラー画面は、下記に示す設定ファイルの定数で管理されています。
定数値 | デフォルト値 |
---|---|
SYL_ERROR_FORWARD_FILE | {SYL_PROJECT_DIR}/lib/Common/DefaultErrorWeb.php |
設定値を別ファイルに変更することで、エラー画面を変更するが可能です。
以下デフォルトのエラー画面の説明となります。
デフォルトのエラー画面では「エラーメッセージ」「エラーソースの前後数行」「エラーファイルのトレース」「その他環境変数」が表示されます。
SYL_ERROR 設定されている定数により、表示される内容も異なります。
定数値 | デフォルト値 |
---|---|
SYL_ERROR | 1 |
SYL_ERROR 定数が有効(1)の場合、「エラーメッセージ」「エラーソースの前後数行」「エラーファイルのトレース」「その他環境変数」全てが表示されますが、 無効(0)の場合、「エラーメッセージ」が SYL_ERROR_MESSAGE 定数で定義した固定メッセージに変わる以外は、全て非表示になります。
開発時は有効(1)に設定し、本番環境では無効(0)に設定することをお勧めします。
本番環境のエラー内容は、ログファイル(とエラーメール)を参照することで把握できます。
また補足的ですが、SyL_DBクラスを使用してSQL実行時エラーが発生した場合、上記画面のように直前のSQLが表示されます。
404エラー(テンプレートを参照するときにファイルが存在しない場合)が発生した場合、404エラー画面に遷移します。(※リダイレクトではない)
カスタムエラー画面は、下記に示す設定ファイルの定数で管理されています。
定数値 | デフォルト値 |
---|---|
SYL_ERROR_FORWARD_FILE_404 | {SYL_PROJECT_DIR}/lib/Common/Error404.php |
設定値を別ファイルに変更することで、エラー画面を変更するが可能です。