広告スペース(バナー)
🐘PHP レッスン
基本文法の基礎8
データ構造とオブジェクト指向7
構文の基本を深める9
関数とデータ構造の応用9
アルゴリズムとテストの基礎8
文字列・数値操作の応用8
実務で役立つ機能8
アルゴリズム練習問題10
レッスン 10 / 68

エラー処理(try...catch)

このレッスンでは、PHPのtry...catchによるエラー処理を学び、想定外の不具合が起きてもプログラム全体を止めずに動かし続けられるようになることを目標にします。「PHP try catch 使い方」で調べている方向けです。

throwで例外を発生させ、try / catchで受け止めます。「万が一失敗しても、代わりの行動をあらかじめ決めておく」という保険のような仕組みです。ユーザーの入力ミスや予測できないトラブルに備える欠かせないスキルです。

サンプルコードでは、divide関数の中で0で割ろうとした場合にthrow new Exception(...)で例外を発生させています。tryブロックの中でこの関数を呼び出し、catch (Exception $e)でエラーメッセージを$e->getMessage()を使って表示しています。

初心者がよくつまずくのが、catchの引数の型指定を間違えることです。特定の種類の例外だけを受け止めたい場合は、catch (ValidationError $e)のように具体的なクラス名を指定する必要があり、これをExceptionのままにしておくとすべての例外を一括で受け止めてしまいます。

例外の種類ごとにcatchを分けることで、原因に応じた適切な対応をコードで書き分けられるようになります。実務のWebアプリケーションでは、データベースエラーと入力エラーを区別して処理することがよくあります。

📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください

🧪 このサイトではPHPを直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。

🎯
ここまでできればゴール達成!
0で割ろうとしてもクラッシュしない、安全な電卓プログラムが作れるようになります。
広告スペース(バナー)
広告スペース(記事内)