【初心者講座】PHPで「どんなエラーも見逃さない」try catchをする方法
作成日:2025-01-10 15:22:56
最新更新日:2025-01-10 15:30:35
結論
\Exceptionと
\Throwableを使いましょう。
try {
} catch(\Exception $EX) {
echo "エラー!".$EX;
http_response_code(500);
} catch(\Throwable $EX) {
echo "エラー!".$EX;
http_response_code(500);
}
ちなみに、エラーが有ったら表示する設定にしていると検知した後にエラーメッセージが出ます。
説明
たぶん初心者がぶつかる壁、少なくとも私はぶつかった
「try catchすればエラーを検知できるんだな!」
↓
「あれ、、、なんか検知できない、そのまま500で落ちちゃう。。。」
PHPくんはちょっとややこしいことになってるので、こんなことになってしまいます。
よくある誤解
・catch(Exception $EX)じゃない
→Exceptionではなく\Exceptionです。
→Windows環境だと円マークに見えるかもしれませんが、これは「バックスラッシュ」です
・Exception以外にもThrowableがある
→これが多分PHPのややこしい所の一つだと思います。
→catchをもう一個用意して、\Throwableとしましょう、
→あ、バックスラッシュは忘れずにね!