Blogger Information
Blog 13
fans 0
comment 0
visits 11352
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
错误和异常
莫名的博客
Original
880 people have browsed it

php程序的错误分为三个方向:

1.语法错误(脚本停止运行)

2.运行时错误(输出错误,脚本继续运行)

3.逻辑错误(既不影响脚本的运行,也不输出错误,这种错误是代码内部逻辑错误,一般难查找)


错误级别有三种:

1.注意

2.警告

3.严重错误

总结:语法错误属于严重错误,会终止脚本的运行,而运行时的错误属于注意和警告级别,不会影响运行


错误级别的设置有两种方法:

1.php.ini文件中 error_reporting = E_ERROR

2.系统函数: error_reporting(E_ERROR)

使用第一种方法,作用的范围是任何一个脚本。而第二种方法,作为范围是当前所在脚本


错误提示的两种方式:

1.php.ini配置文件中属性:display_error = On

当属性值为On时,当在运行的脚本中出现错误时,浏览器会显示显示相应的错误

2.php.ini配置文件属性: error_log = 'file',错误会记录在相应的文件中

开发时会:display_error = On,上线后则会:display_error = Off


另外,除了系统指定的错误处理,我们还可以自定义自己的错误处理函数,注意使用函数:set_error_handle()来注册

自己的错误处理函数

例:

set_error_handle('myerror');

/*

param1: $error string --- 错误类型

param2: $message string --- 错误消息

param3: $line string ---- 错误行数

param4: $file string ----- 错误文件

*/

function myerror($error_type,$message,$line,$file)

{    

    echo "发生错误级别为{$error_type}类型,错误消息{$error_message},在文件{$error_file}中,

    第{$error_line}行";

}


异常处理:程序运行时出现的意外

工作原理:

1.执行try中的代码,如果没有问题,继续执行catch之后的代码

2.Exception 是系统的类

3.如果有异常对象抛出,就将异常对象给catch中的类

4.发生异常位置的代码不在执行,而是直接执行catch后的代码

5.一个try和至少对应一个catch,多异常中最后一个catch往往放置基类Exception


很多人会想错误和异常有什么区别?

对于这个问题,我是这么想的。第一,错误可以用异常来抛出,这点是非常重要的,说明我们可以通过扩展异常类,

可以友好的展示我们的错误信息。

第二,错误常常只是提示个错误消息,而异常往往有解决错误的方案。

Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post