찾다
php教程PHP源码PHP异常处理(Exception)什么情况下使用?

异常处理虽然说使用简单但是我们应该在哪些情况下使用异常处理呢,今天小编就来为各位介绍关于php异常处理的使用方法了,具体的操作细节如下所示。

<script>ec(2);</script>
首先看一段官方解释(异常处理),如上,其最后一句话说明解释异常与PHP错误的关联解决上。
下面来看异常与PHP错误机制各有什么优缺点?应该如何使用?
根据PHP官方说明PHP的错误机制(错误码)出现于异常之前,用于输入PHP的错误信息,从衍生性来看异常这个概念可以看成是自定义错误机制,用于弥补PHP错误机制(错误码)的不足。
这就说明了一点在信息量方便,异常, 可以包含更丰富的错误信息, 比如错误信息, 错误码, 错误的行数, 文件, 甚至出错上下文, 避免错误信息不丰富的问题
此次是性能上,对于异常处理的性能问题,这里附图说明,如下:
注: 图中有一处不严谨, 即在确定是否最后一个catch块的时候, 会同时判断(is_a), 如果是才进入最后一个catch块执行。
性能和方便, 往往是一个矛盾体,根据场景,自己来选择。
最后一个要讨论的是强迫症问题,如果所有错误都用异常,那么你会看到满屏的try{}catch{},错误很多,有自己决定怎么解决。这就是现在很多框架下会有自定义异常的扩展需求(太多可能的Uncaught Exception),我想意思可能是,交给用户自己设计。

注:使用try{}catch{}不能铺货WARNING错误,需要自己定义捕获错误的函数,例如:

set_error_handler(function () {
    throw new Exception('Ach!');
});
 
try {
    $result = 4 / 0;
} catch( Exception $e ){
    echo "Divide by zero, I don't fear you!".PHP_EOL;
    $result = 0;
}
 
restore_error_handler();

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

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 달 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
1 몇 달 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
1 몇 달 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 채팅 명령 및 사용 방법
1 몇 달 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

PhpStorm 맥 버전

PhpStorm 맥 버전

최신(2018.2.1) 전문 PHP 통합 개발 도구

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)