るみさんのブログ

【初心者講座】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としましょう、
→あ、バックスラッシュは忘れずにね!



シェア



コメント欄の復旧は少し待ってね