>  기사  >  백엔드 개발  >  다른 곳의 규정 위반을 처리하는 방법 보충 PHP 오류 및 예외 처리 메커니즘

다른 곳의 규정 위반을 처리하는 방법 보충 PHP 오류 및 예외 처리 메커니즘

WBOY
WBOY원래의
2016-07-29 08:48:33923검색

1. 오류 처리
예외 처리: 사고는 프로그램 실행 중에 발생하는 예상치 못한 일입니다. 예외를 사용하여 스크립트의 일반적인 흐름을 변경합니다
PHP5의 새로운 중요한 기능

코드 복사 코드는 다음과 같습니다.


if(){
}else{
}
try {
} catch( Exception 객체) {
}


1. try에 있는 코드에 문제가 없으면 try에 있는 코드가 실행된 후 catch 후에 실행됩니다.
2.try에 있는 코드에 예외가 있는 경우 예외가 발생하면 예외 객체(throw를 사용)가 발생하고, catch에 있는 매개변수에 예외가 발생하면 try에 있는 코드는 더 이상 실행되지 않습니다. 🎜> 실행을 위해 직접 catch로 점프하면 catch의 실행이 완료되고 계속 실행됩니다.
참고: 어떤 예외가 발생했는지 확인합니다. 이는 우리가 해야 할 주요 작업이 아니며 이 예외를 해결해야 합니다. catch에서 해결할 수 없으면 나가서 사용자에게 보고합니다
2. 예외 클래스를 직접 정의합니다
기능: 이 예외가 발생했을 때 문제를 해결하기 위한 하나 이상의 메서드를 작성하는 것입니다
1. Exception(내장 클래스)의 하위 클래스여야 하는 고유한 예외 클래스를 정의합니다.
2. Exception 클래스에서는 생성자와 toString()만 다시 작성할 수 있으며 나머지는 최종입니다.
3. 다중 예외 처리
함수형 클래스를 직접 정의할 때 메서드에서 예외가 발생하는 경우

코드 복사 코드는 다음과 같습니다.

클래스 OpenFileException 확장 예외 {
function __construct($message = null, $code = 0){
parent::__construct ($message, $code)
echo "wwwwwwwwwwwwwww
";
}
function open(){
touch("tmp.txt")
$file=fopen ("tmp.txt", "r");
return $file;
}
}
class DemoException extends Exception {
function pro(){
echo "발생한 데모 예외 처리
}
}
class TestException extends Exception {
function pro(){
echo "여기에서 테스트
에서 발생한 예외를 처리합니다."
}
}
class HelloException 확장 예외 {
}
class MyClass {
function openfile(){
$file=@fopen("tmp.txt", " r")
if(!$file )
throw new OpenFileException("파일 열기 실패");
}
function 데모($num=0){
if($num ==1)
throw new DemoException(" 예외 시연");
}
function test($num=0){
if($num==1)
throw new TestException("Test error");
}
function fun($num=0){
if($num==1)
throw new HelloException("####### ####")
}
}
시도해 보세요{
echo "11111111111111
"
$my=new MyClass()
$my->demo; (0); $my->test(0);
$my->fun(1)
echo "22222222222222222
"; ){ //$e =new Exception();
echo $e->getMessage()."
"
$file =$e->open()
}catch(DemoException $e){
echo $e->getMessage()."
"
$e->pro ()
}catch(TestException $e) {
echo $e->getMessage()."
"
$e->pro()
} catch(예외 $e){
echo $e ->getMessage()."
";
var_dump($file)
echo "4444444444444


위의 내용은 다양한 위치에서 위반을 처리하는 방법을 소개하며 PHP 오류 및 예외 처리 메커니즘을 보완합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.


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