异常捕获和处理/笔记

php的异常

扩展php内置的异常处理类:可以通过实例化Exception类或者它的子类来创建一个异常实例。

http://php.net/manual/zh/class.exception.php

construct 异常构造函数

getMessage 获取异常消息内容

getPrevious 返回异常链的前一个异常

getFile 获取发生异常的程序文件名称

getLine 获取发生异常的代码在文件中的行号

内置异常子类 Exception 在php的SPL库中


php中的异常处理

异常处理功能是在程序运行时出现的错误或异常处理的方法。

PHP5提供了一种新的面向对象的错误处理方法,使用检测(try)、抛出(throw)和捕获(catch)异常。

Try- 使用异常的函数应该位于try代码块内,如果没有触发异常,程序会正常运行,一旦触发异常,就会抛出一个异常。

Throw-规定如何触发异常,每一个throw至少对应一个catch

Catch-catch代码块捕获异常,并创建一个包含异常信息的对象

一个try至少要有一个与之对应的catch。定义多个catch可以捕获不同的对象,PHP会按这些catch被定义的顺序执行,直到完成最后一个为止,而在这些catch内,又可以抛出新的异常。


class A{

public function __construct(){

thrownew Exception("错误信息");

}

}

try{

$a = new A();

}catch(Exception $e){

echo "在文件",$e->getFile(),"中的第",$e->getLine(),"行中产生异常;异常信息:",$e->getMessage();

}


异常捕获和处理/笔记