PHP 8 이전에 예외를 포착하려면 일반적으로 변수에 저장 한 다음이 변수를 점검하여 예외 정보를 얻었습니다. 이러한 방식으로 개발자는 오류 코드, 오류 메시지 등과 같은 예외에 대한 자세한 정보를 얻을 수 있습니다.
PHP 8 이전의 예외를 포착하는 전통적인 방법은 다음과 같습니다.
<?php
function
foo()
{
try
{
throw
new
Exception(
'Hello'
);
}
catch
(Exception
$e
) {
return
$e
->getMessage();
}
}
?>
위의 코드에서 예외는 캐치 블록에 의해 잡히고 변수 $ e 에 저장되며 예외 세부 정보를 통해 얻을 수 있습니다.
PHP 8은 새로운 캡처되지 않은 예외 캡처 기능을 도입했습니다. 즉, 예외가 잡히면 더 이상 변수에 저장할 수 없으므로 더 이상 캡처 된 예외 객체에 신경 쓰지 않아도됩니다. 예외 객체에서 정보를 사용할 필요가 없으면이 단순화 된 방법을 사용하여 예외를 포착 할 수 있습니다.
다음은 PHP 8에서 캡처되지 않은 예외 캡처의 예입니다.
<?php
try
{
throw
new
Exception(
'hello'
);
}
catch
(Exception) {
// $e 变量已省略
}
?>
이 예에서는 예외가 성공적으로 잡히지만 변수에 저장되지는 않습니다. 이 접근법은 세부 사항을 돌보지 않고 예외를 처리 해야하는 상황에 매우 유용합니다.
PHP 8의 캡처되지 않은 예외 캡처 기능은 예외 처리를보다 유연하게 만듭니다. Exception Objects에서 정보에 액세스 할 필요가 없으면 단순화 된 캡처 방법을 사용하여 코드를보다 간결하게 만들고 코드의 가독성과 유지 관리를 향상시킬 수 있습니다.