라이브러리

[PHP] Exception::__toString - 예외의 문자열 표현




Exception::__toString


PHP 에서 `Exception` 클래스는 모든 예외를 표현하는 기본 클래스입니다. 이 클래스는 `__toString` 메소드를 제공하여 예외를 문자열로 변환할 수 있습니다.

`__toString` 메소드는 예외를 문자열로 변환할 때 사용되는 메소드입니다. 이 메소드는 예외의 정보를 문자열로 변환하여 반환합니다.

예제


#hostingforum.kr
php

try {

    $x = 5 / 0;

} catch (DivisionByZeroError $e) {

    echo $e->__toString();

}



위의 예제에서는 `DivisionByZeroError` 예외가 발생할 때, `__toString` 메소드를 사용하여 예외를 문자열로 변환하고 출력합니다.

예외의 정보


`Exception` 클래스는 다음과 같은 정보를 제공합니다.

- `getMessage()`: 예외의 메시지를 반환합니다.
- `getCode()`: 예외의 코드를 반환합니다.
- `getFile()`: 예외가 발생한 파일을 반환합니다.
- `getLine()`: 예외가 발생한 라인을 반환합니다.
- `getTrace()`: 예외가 발생한 호출 스택을 반환합니다.

예제


#hostingforum.kr
php

try {

    $x = 5 / 0;

} catch (DivisionByZeroError $e) {

    echo "메시지: " . $e->getMessage() . "
";

    echo "코드: " . $e->getCode() . "
";

    echo "파일: " . $e->getFile() . "
";

    echo "라인: " . $e->getLine() . "
";

    echo "호출 스택:
";

    print_r($e->getTrace());

}



위의 예제에서는 `DivisionByZeroError` 예외가 발생할 때, 예외의 정보를 출력합니다.

커스텀 예외


`Exception` 클래스를 상속하여 커스텀 예외를 만들 수 있습니다.

#hostingforum.kr
php

class CustomException extends Exception {

    public function __construct($message, $code = 0) {

        parent::__construct($message, $code);

    }

}



try {

    throw new CustomException("커스텀 예외");

} catch (CustomException $e) {

    echo $e->__toString();

}



위의 예제에서는 `CustomException` 클래스를 만들고, `__toString` 메소드를 사용하여 예외를 문자열로 변환합니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 569 페이지

검색

게시물 검색