>  기사  >  백엔드 개발  >  예외 처리 - PHP 매뉴얼 참고

예외 처리 - PHP 매뉴얼 참고

WBOY
WBOY원래의
2016-08-08 09:28:49981검색

PHP 코드에서 생성된 예외는 throw 문으로 발생하고 catch 문으로 캡처할 수 있습니다. 예외 처리가 필요한 코드는 try 코드 블록 내에 배치되어야 하며 각 try에는 해당 catch이 하나 이상 있어야 합니다. 예외가 발생하면 코드 블록 뒤의 코드는 계속 실행되지 않습니다. 이때 PHP는 첫 번째로 일치하는 catch을 찾으려고 시도합니다. 물론, PHP는 catch 코드 블록 내에서 throw 예외가 다시 발생하도록 허용합니다. 예외가 포착되지 않고 set_exception_handler()을 사용하여 적절하게 처리되면 PHP는 치명적인 오류를 생성합니다.

다음은 예외 사용 예입니다.

<code><?php
function inverse($x) {
    if(!$x) {
        throw new Exception(&#39;Division by zero.&#39;);
    } else {
        return 1 / $x;
    }
}
try {
    echo inverse(5) . &#39;<br>';
    echo inverse(0) . '<br>';
} catch(Exception $e) {
    echo 'Caught exception: ' . $e->getMessage() . '<br>';
}
echo 'hello';</code>

내포된 예외의 예도 있습니다.

<code><?php
class MyException extends Exception {}
class Test {
    public function testing() {
        try {
            try {
                throw new MyException(&#39;foo.&#39;);
            } catch(MyException $e) {
                throw $e;
            }
        } catch(Exception $e) {
            var_dump($e->getMessage());
        }
    }
}
$foo = new Test;
$foo->testing();</code>

사용자는 사용자 정의 예외 처리 클래스를 사용하여 PHP에 내장된 예외 처리 클래스를 확장할 수 있습니다.

(전문 종료)

위에는 관련 내용을 포함하여 예외 처리에 대한 소개 - PHP 매뉴얼 노트가 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

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