catch関数

関数 catch は try-catch ブロックの一部であり、ブロック try 内でスローされる可能性のある例外を捕捉するために使用されます。例外が発生すると、コードの実行は対応する catch ブロックに移行し、そこでエラーを処理することができます。

構文

phptry {
  // 例外をスローする可能性のあるコード
} catch (ExceptionType $e) {
  // 例外の処理
}

例

例外処理の最も簡単な例:

php<?php
  try {
    throw new Exception('Something went wrong');
  } catch (Exception $e) {
    echo 'Caught exception: ' . $e->getMessage();
  }
?>

コード実行結果:

php'Caught exception: Something went wrong'

例

異なるタイプの例外の処理:

php<?php
  try {
    if (rand(0, 1)) {
      throw new InvalidArgumentException('Invalid argument');
    } else {
      throw new RuntimeException('Runtime error');
    }
  } catch (InvalidArgumentException $e) {
    echo 'Invalid argument: ' . $e->getMessage();
  } catch (RuntimeException $e) {
    echo 'Runtime error: ' . $e->getMessage();
  } catch (Exception $e) {
    echo 'Generic exception: ' . $e->getMessage();
  }
?>

コード実行結果の可能性:

php'Invalid argument: Invalid argument'
または
'Runtime error: Runtime error'

関連項目

  • 例外処理のためのコードブロックを定義する 構文 try
  • 例外をスローする 構文 throw
  • すべての例外の基底クラスである クラス Exception