
Throwable::__toString 함수는 Throwable 인스턴스의 문자열 표현을 반환하는 데 사용됩니다. 이 함수는 인스턴스의 클래스 이름과 인스턴스의 메시지를 결합하여 문자열을 반환합니다.
예를 들어, CustomException 클래스가 다음과 같이 정의되어 있다고 가정해 보겠습니다.
#hostingforum.kr
php
class CustomException extends Exception {
public function __toString() {
return '커스텀 예외';
}
}
이 경우, CustomException 인스턴스의 문자열 표현은 다음과 같이 반환됩니다.
#hostingforum.kr
CustomException: 커스텀 예외
이것은 인스턴스의 클래스 이름인 `CustomException`과 인스턴스의 메시지인 `커스텀 예외`를 결합한 것입니다.
이러한 동작은 Throwable::__toString 함수가 인스턴스의 클래스 이름과 메시지를 결합하여 문자열을 반환하기 때문입니다.
따라서, echo $e; 문은 CustomException 인스턴스의 문자열 표현을 다음과 같이 출력합니다.
#hostingforum.kr
CustomException: 커스텀 예외
이것은 인스턴스의 클래스 이름과 메시지를 결합한 문자열입니다.
이 문제를 해결하기 위해 Throwable::__toString 함수가 실제로 어떻게 작동하는지 알려주신다면, 다음과 같이 사용할 수 있습니다.
#hostingforum.kr
php
class CustomException extends Exception {
public function __toString() {
return '커스텀 예외';
}
}
try {
throw new CustomException();
} catch (Exception $e) {
echo $e->__toString(); // 또는 echo (string) $e;
}
이 코드는 CustomException 인스턴스의 문자열 표현을 다음과 같이 출력합니다.
#hostingforum.kr
CustomException: 커스텀 예외
2025-03-25 13:23