例外処理

例外処理


例外処理とは意図しないエラー(例外)が発生したときに備えて、自分なりの処理を設定したり、メッセージを表示させたりと何かしらの対策をしておくことです。

エラー(例外)が発生する事例


・読み込むファイルが存在しない
・データベースの処理において接続障害
・0で割り算をしたなど

例外処理の書き方


try {

    //例外が発生する可能性があるコード
    throw new 例外クラス名(引数)

} catch(例外クラス名 例外を代入する変数名) {

    //例外が発生した場合に行う処理

}
    //エラーが発生しなければ続く通常の処理

「throw new 例外クラス名(引数)」とは

例外が発生することを例外を投げるといいます。
throw new 例外クラス名(引数)でインスタンスを作成しています。

「例外クラス名」とは

phpには最初から定義済みの例外クラスがいくつかあります。(Exceptionクラスなど)
ここでは、その例外クラス名を定義します。

「例外を代入する変数名」とは

例外処理ではcatchしたときにインスタンスを変数に代入します。
throw new 例外クラス名(引数)でインスタンスを作成し、catch(例外クラス名 例外を代入する変数名)でインスタンスを変数に代入しています。

 

 

0で割り算をしたという事例で見てみましょう。

function devide($int1,$int2) {
    try {
        if($int2 == 0) {
            throw new Exception('0で割ることはできません。');
        }
        return $int1 / $int2;
    } catch(Exception $e) {
        echo "例外処理が発生しました";
        echo "<br>";
        echo $e->getMessage();
    }
}

echo devide(5, 0);


まとめ


  • 例外が発生する可能性がある箇所をtry{}に書きます。
  • throw new Exception()で例外を投げます。
  • 例外が投げられた時の処理をcatch(){}に書いていきます。

カテゴリー

アーカイブ

Close Bitnami banner
Bitnami