catch 함수

함수 catch는 try-catch 블록의 일부이며, try 블록에서 던져질 수 있는 예외를 포착하는 역할을 합니다. 예외가 발생하면 코드 실행이 해당 catch 블록으로 이동하여 오류를 처리할 수 있습니다.

구문

phptry {
  // 예외를 던질 수 있는 코드
} catch (ExceptionType $e) {
  // 예외 처리
}

예제

예외 처리의 가장 간단한 예:

php<?php
  try {
    throw new Exception('뭔가 잘못되었습니다');
  } catch (Exception $e) {
    echo '포착된 예외: ' . $e->getMessage();
  }
?>

코드 실행 결과:

php'포착된 예외: 뭔가 잘못되었습니다'

예제

다른 유형의 예외 처리:

php<?php
  try {
    if (rand(0, 1)) {
      throw new InvalidArgumentException('잘못된 인수');
    } else {
      throw new RuntimeException('런타임 오류');
    }
  } catch (InvalidArgumentException $e) {
    echo '잘못된 인수: ' . $e->getMessage();
  } catch (RuntimeException $e) {
    echo '런타임 오류: ' . $e->getMessage();
  } catch (Exception $e) {
    echo '일반 예외: ' . $e->getMessage();
  }
?>

코드 실행의 가능한 결과:

php'잘못된 인수: 잘못된 인수'
또는
'런타임 오류: 런타임 오류'

함께 보기

  • 예외 처리를 위한 코드 블록을 정의하는 try 구문,
  • 예외를 던지는 throw 구문,
  • 모든 예외의 기본 클래스인 Exception 클래스