php异常机制
1 php异常概念
php异常不同于java异常,java中有些语句主动抛出异常,而php必须手动抛异常。如果php语句出现错误而你又没有抛出异常则程序终止执行。处理异常的结果如下:
try{ throw new Exception('message',code); } catch (Exception $e){ echo $e; }
一个try块可以接多个catch块但catch块参数必须是不同的数据类型。
2 Exception类
Exception类是PHP的内嵌类,自定义的异常类可以继承该类。其中的_toStirng方法可以被重写,还有出错行信息等成员变量,用$echo($e)输出的内容其实就是调用了_toString()方法。输出内容为:出错文件名,出错行等信息,我们可以重写一个属于我们自己的出错信息。
3 php项目如何关闭错误和警告信息
@:将@符号置于句首,当前语句的错误和警告信息不会显示
php.ini:对配置文件进行相应设置可关闭错误信息
diaplay_errors=Off //错误信息不显示在网页中
记录日志文件:
erro_reporting = E_ALL // php报告错误级别
log_erro = On //将错误信息写入文件或操作系统吗
erro_log = e:\err.log //将错误信息写入路径(此处用绝对路径,用于调试)