라이브러리
[PHP] Exception::getTrace - 스택 추적을 가져옵니다.
Exception::getTrace
PHP 에서 `Exception::getTrace` 메서드는 예외가 발생했을 때 호출된 함수의 호출 스택을 반환합니다. 이 메서드는 `Exception` 클래스의 인스턴스에서 호출할 수 있으며, 예외가 발생한 함수의 호출 스택을 분석할 때 유용합니다.
예제
#hostingforum.kr
php
function 함수1() {
try {
함수2();
} catch (Exception $e) {
echo "함수1에서 예외가 발생했습니다.
";
echo "예외 메시지: " . $e->getMessage() . "
";
echo "예외 스택:
";
$trace = $e->getTrace();
foreach ($trace as $i => $frame) {
echo "함수 " . $frame['function'] . " (라인 " . $frame['line'] . ")
";
echo " 호출한 함수: " . $frame['function'] . "
";
echo " 호출한 라인: " . $frame['line'] . "
";
}
}
}
function 함수2() {
throw new Exception("함수2에서 예외가 발생했습니다.");
}
함수1();
이 예제에서, `함수1`은 `함수2`를 호출하고, `함수2`에서 예외를 발생시킵니다. `함수1`은 예외를 catch하고, `Exception::getTrace` 메서드를 호출하여 예외가 발생한 함수의 호출 스택을 분석합니다. 호출 스택은 `함수2`에서 `함수1`으로 호출된 함수의 호출 스택을 포함합니다.
결과
#hostingforum.kr
함수1에서 예외가 발생했습니다.
예외 메시지: 함수2에서 예외가 발생했습니다.
예외 스택:
함수 함수2 (라인 10)
호출한 함수: 함수1
호출한 라인: 5
함수 함수1 (라인 5)
호출한 함수: (main)
호출한 라인: 15
사용법
`Exception::getTrace` 메서드를 사용하려면, 예외가 발생한 함수의 호출 스택을 분석하고 싶을 때 호출할 수 있습니다. 예를 들어, 웹 애플리케이션에서 예외가 발생했을 때, 호출 스택을 분석하여 문제의 원인을 찾을 수 있습니다.
참고
* [PHP Manual - Exception::getTrace](https://www.php.net/manual/kr/exception.gettrace.php)
* [PHP Manual - Exception](https://www.php.net/manual/kr/class.exception.php)
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.