PHP의 오류 처리 및 예외 처리에 대한 간략한 설명

不言
풀어 주다: 2023-03-29 17:50:02
원래의
1486명이 탐색했습니다.

이 글은 주로 PHP의 오류 처리 및 예외 처리에 대한 간략한 설명을 소개합니다. 이제 이를 참고할 수 있습니다.

오류 처리:
1. 문법 오류
2. 런타임 오류
3. 논리 오류

오류 보고서:
오류 E_ERROR
경고 E_WARNING
주의 E_NOTICE

개발 단계: 개발 중 모든 오류 보고서를 출력합니다. 이는 디버깅에 도움이 됩니다.

실행 단계: 프로그램이 어떤 종류의 오류 보고서도 출력하지 않도록 하세요

오류 보고서를 로그에 기록하세요

1. 오류 보고서 error_reporting=E_ALL(php.inn에서)

을 지정하세요. 2. 오류 출력을 끕니다. display_errors=off(php.ini에서)

3. 오류 로그 기능을 켭니다. log_errors=on(php.ini에서)

1. 지정하지 않으면 기본적으로 웹 서버의 로그에 기록됩니다

2. error_log 옵션에 파일 이름을 지정합니다. 이 파일 이름은 오류 로그

3입니다.

<?php
//注意和警告都不会终止程序的运行,但是错误会终止程序的运行
/*
错误E_ERROR
警告E_WARNING
注意E_NOTICE
*/
//所有的错误都输出除了注意
error_reporting(E_ALL & ~E_NOTICE);

//设置配置文件的值(临时)
//ini_set("upload_max_filesize", 2000000000);

//得到配置文件的值
//ini_get("upload_max_filesize");

//关闭错误报告的显示,一般在运行阶段使用
ini_set("display_errors", "off");
//将错误报告写入日志中
ini_set("log_errors", "on");
//日志的目录
ini_set("error_log", "D:/error.log");
gettype($var);  //注意

gettype();    //警告

//getype();    //错误,程序终止

echo "############<br>";
?>
로그인 후 복사

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

PHP5의 새로운 중요한 기능

  try{
    }catch(异常对象){
    }
로그인 후 복사

1. 코드에 문제가 없으면 try에 있는 코드가 실행된 후 catch 후에 실행됩니다.

2. try에 있는 코드에서 예외가 발생하면 예외 개체가 발생합니다. (throw를 사용하여) 던져지고 catch의 매개 변수에 던져지면 try에 표시된 예외 코드 이후의 내용은 실행이 완료된 후 catch로 직접 이동합니다. 잡기, 처형은 계속됩니다

<?php
try{
  echo "11111111<br>";
  $file=@fopen("./hello.txt","r");
  if(!$file){
    throw new Exception("文件打开失败");
    
  }
  echo "2222222222<br>";
}catch(Exception $e){
  echo "3333333<br>";
  echo $e->getMessage()."<br>";
  touch("hello.txt");
  $file=@fopen("./hello.txt","r");
}
echo "4444444<br>";
?
로그인 후 복사

위 내용은 PHP의 오류 처리 및 예외 처리에 대한 간략한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!