>백엔드 개발 >PHP 문제 >PHP의 사용자 정의 예외 처리 클래스란 무엇입니까? 사용자 정의 예외 처리 클래스를 해결하는 방법은 무엇입니까?

PHP의 사용자 정의 예외 처리 클래스란 무엇입니까? 사용자 정의 예외 처리 클래스를 해결하는 방법은 무엇입니까?

慕斯
慕斯원래의
2021-06-21 16:15:141771검색

이전 글에서는 "PHP에서 예외 처리란 무엇인가요?"에 대해 소개했습니다. 예외 처리에서 try-catch를 어떻게 사용합니까? 》, 이 기사에서는 계속해서 PHP의 사용자 정의 예외 처리 클래스가 무엇인지 소개합니다. 사용자 정의 예외 처리 클래스를 어떻게 해결할 수 있습니까? 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.

PHP의 사용자 정의 예외 처리 클래스란 무엇입니까? 사용자 정의 예외 처리 클래스를 해결하는 방법은 무엇입니까?

사용자 정의 예외 처리 클래스:

final:클래스를 수정하는 데 사용된다면 이 클래스를 상속받을 수 없다는 의미입니다. 재정의할 수 없습니다

상속하려면 공식적인 예외 처리 클래스이므로 메서드를 마음대로 추가할 수 있으므로 부모 클래스의 메서드를 재정의할 수 있는지 주의하세요.

[참고] 캐치가 여러 개인 경우 위에 사용자 정의 예외 클래스를 작성하고 아래에 공식 예외 클래스를 작성하세요

중첩: try에서 try를 생성할 수 있습니다

사용자 정의 예외 처리 함수(이해)

set_exception_ handler('test') ;

등록 함수에서 예외가 발생하면 이 함수에 의해 자동으로 포착됩니다. =함수에는 매개변수가 있고 매개변수는 예외 객체입니다

코드를 예로 들어보겠습니다.

<?php
function test($e)
{
echo $e->getMessage();
}
set_exception_handler(&#39;test&#39;);
throw new Exception( &#39;现在有异常了&#39;);

PHP의 사용자 정의 예외 처리 클래스란 무엇입니까? 사용자 정의 예외 처리 클래스를 해결하는 방법은 무엇입니까?

예외 처리 클래스를 코드 형식으로 설명하겠습니다. 먼저 새 파일을 만들어야 합니다. 클래스 클래스를 정의한 다음 (함수를 정의해야 합니다. ) 클래스에서, try를 통해 코드를 실행하려고 하면 catch를 통해 자체 예외 처리 클래스를 통해 이를 포착할 수 있습니다.

<?php
class MyException extends Exception
{
function demo( )
{
  echo &#39;执行第二套方案<br />&#39; ;
}
}
try {
  echo &#39;我将于茫茫人海中访我唯一灵魂之伴侣<br />&#39;;
  throw new MyException( &#39;主人出错啦&#39;);
  echo &#39;得之,我幸;不得,我命<br />&#39;;
} catch (MyException $e) {
  echo $e->getMessage();
}
?>

코드 시연 결과는 다음과 같습니다.

PHP의 사용자 정의 예외 처리 클래스란 무엇입니까? 사용자 정의 예외 처리 클래스를 해결하는 방법은 무엇입니까?

다음은 자체적으로 정의한 예외 처리 클래스입니다. 실행 중 오류가 발생하면 이를 실행할 수 있습니다. 두 번째 메소드 세트인

catch (MyException $e) {
  echo $e->getMessage();
  echo &#39;<hr>&#39;;
  $e->demo();
}

코드 데모 결과는 다음과 같습니다.

PHP의 사용자 정의 예외 처리 클래스란 무엇입니까? 사용자 정의 예외 처리 클래스를 해결하는 방법은 무엇입니까?

지금 바로 코드를 복사하여 어떤 catch가 예외를 잡을 수 있는지 알아봅시다. 코드는 다음과 같습니다.

try {
  echo &#39;我将于茫茫人海中访我唯一灵魂之伴侣<br />&#39;;
  throw new MyException( &#39;主人出错啦&#39;);
  echo &#39;得之,我幸;不得,我命<br />&#39;;
} catch (MyException $e) {
  echo &#39;因为爱过,所以慈悲&#39;;
}catch (Exception $e){
  echo &#39;因为懂得,所以宽容&#39;;
}

코드 데모 결과는 다음과 같습니다.

PHP의 사용자 정의 예외 처리 클래스란 무엇입니까? 사용자 정의 예외 처리 클래스를 해결하는 방법은 무엇입니까?

할 수 있습니다. 발견된 예외는 우리의 사용자 정의라는 것을 코드에서 볼 수 있습니다. 예외 처리 클래스는 이 객체를 캡처하는 데 사용됩니다. MyException 및 Exception의 순서를 변경하면 어떻게 될까요? 실행해 보면 여전히 첫 번째 클래스라는 것을 알 수 있습니다.

참고: Exception은 공식 클래스이고 상위 클래스이며 MyException의 상위 클래스입니다. 두 클래스 모두에서 예외를 포착하면 동시에 먼저 하위 클래스를 배치한 다음 공식 클래스를 작성해야 합니다.

추천 학습:

php 비디오 튜토리얼

위 내용은 PHP의 사용자 정의 예외 처리 클래스란 무엇입니까? 사용자 정의 예외 처리 클래스를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.