定义和用法

set_exception_handler() 函数设置用户自定义的异常处理函数。

该函数用于创建运行时期间的用户自己的异常处理方法。

该函数会返回旧的异常处理程序,若失败,则返回 null。

语法

set_exception_handler(exception_function)
参数 描述
error_function

必需。规定未捕获的异常发生时调用的函数。

该函数必须在调用 set_exception_handler() 函数之前定义。

这个异常处理函数需要需要一个参数,即抛出的 exception 对象。

例子:

function exceptionHandler($exception) {

	$errmsg = "[".date("Y-m-d H:i:s")."] ".$exception->getMessage()."\n";
$errmsg .= "REQUEST: ".print_r($_REQUEST, true)."\n";
$errmsg .= "Server: ".print_r($_SERVER['REQUEST_URI'], true)."\n"; error_log($errmsg, 3, ERROR_LOG); }
set_exception_handler('exceptionHandler');

  

定义和用法

set_error_handler() 函数设置用户自定义的错误处理函数。

该函数用于创建运行时期间的用户自己的错误处理方法。

该函数会返回旧的错误处理程序,若失败,则返回 null。

语法

set_error_handler(error_function,error_types)
参数 描述
error_function 必需。规定发生错误时运行的函数。
error_types 可选。规定在哪个错误报告级别会显示用户定义的错误。默认是 "E_ALL"。

提示和注释

提示:如果使用了该函数,会完全绕过标准的 PHP 错误处理函数,如果必要,用户定义的错误处理程序必须终止 (die() ) 脚本。

注释:如果在脚本执行前发生错误,由于在那时自定义程序还没有注册,因此就不会用到这个自定义错误处理程序。

例子:

function errorHandler($errno, $errstr, $errfile, $errline) {

    $errmsg = "[".date("Y-m-d H:i:s")."] [{$errno}] {$errstr}\n";
$errmsg .= "Error on line {$errline} in {$errfile}\n\n";
$errmsg .= "REQUEST: ".print_r($_REQUEST, true)."\n";
$errmsg .= "Server: ".print_r($_SERVER['REQUEST_URI'], true)."\n"; error_log($errmsg, 3, ERROR_LOG); die();
}
set_error_handler("errorHandler");

set_exception_handler 和 set_error_handler 函数的更多相关文章

  1. PHP之set_error_handler()函数讲解

    定义和用法 set_error_handler() 函数设置用户自定义的错误处理函数. 该函数用于创建运行时期间的用户自己的错误处理方法. 该函数会返回旧的错误处理程序,若失败,则返回 null. 语 ...

  2. PHP set_error_handler() 函数

    定义和用法 set_error_handler() 函数设置用户自定义的错误处理函数. 该函数用于创建运行时期间的用户自己的错误处理方法. 该函数会返回旧的错误处理程序,若失败,则返回 null. 语 ...

  3. PHP set_error_handler()函数的使用【转载】

    我们写程序,难免会有问题(是经常会遇到问题 ),而PHP遇到错误时,就会给出出错脚本的位置.行数和原因.有很多人说,这并没有什么大不了.确实,在调试程序阶段,这确实是没啥的,而且我认为给出错误路径是必 ...

  4. PHP set_error_handler()函数的使用

    我们写程序,难免会有问题(是经常会遇到问题 ),而PHP遇到错误时,就会给出出错脚本的位置.行数和原因.有很多人说,这并没有什么大不了.确实,在调试程序阶段,这确实是没啥的,而且我认为给出错误路径是必 ...

  5. PHP set_exception_handler 设置异常处理函数

    If you're handling sensitive data and you don't want exceptions logging details such as variable con ...

  6. PHP错误处理函数set_error_handler()的用法

    定义和用法 set_error_handler() 函数设置用户自定义的错误处理函数. 该函数用于创建运行时期间的用户自己的错误处理方法. 该函数会返回旧的错误处理程序,若失败,则返回 null. 语 ...

  7. PHP 错误与异常 笔记与总结(8)自定义错误处理函数 set_error_handler()

    通过 Set_error_handler() 函数设置用户自定义的错误处理函数. 步骤: ① 创建错误处理函数 ② 设置不同级别调用函数 ③ Set_error_handler() 函数制定接管错误处 ...

  8. PHP错误处理函数set_error_handler()的用法[转载]

    定义和用法 set_error_handler() 函数设置用户自定义的错误处理函数. 该函数用于创建运行时期间的用户自己的错误处理方法. 该函数会返回旧的错误处理程序,若失败,则返回 null. 语 ...

  9. 开源框架中常用的php函数

    类的自动加载后直接实例化 //自动加载类 function my_autoloader($class) { include $class . 'Class.php'; } spl_autoload_r ...

随机推荐

  1. ElasticSearch 常用的查询过滤语句

    query 和  filter 的区别请看: http://www.cnblogs.com/ghj1976/p/5292740.html Filter DSL term 过滤 term主要用于精确匹配 ...

  2. sql server 2008 r2 中的oracle发布使用笔记

    sql server 2008 r2 中的oracle发布功能,能够将oracle数据库作为发布服务器,将oracle中的数据自动同步到sql server 数据库中,在新建oracle发布前确保sq ...

  3. Android--Intent的使用

    1.Activity之间的切换通过Intent来完成. 1)清单文件,配置好Activity,所有Activity都需要在该文件中配置. <?xml version="1.0" ...

  4. (转)配置Website的IIS时遇到的问题与解决方法

    在部署WebSite时遇到问题,刚好发现Eric Sun的文章,因此转载做个副本. 原文地址:http://www.cnblogs.com/mingmingruyuedlut/archive/2011 ...

  5. 用了skin皮肤控件之后,报错:容量超出了最大容量 参数名:capacity

    http://blog.csdn.net/keenweiwei/article/details/7403869 用了皮肤控件之后,报错:容量超出了最大容量 参数名:capacity MessageBo ...

  6. 走出测试,走向CEO

    飞测说:大家好,我们又见面了,我是黑夜小怪.不巧,今晚加班回来路上,湿身了,淋了个落汤鸡,不过明天也许可以看海了,也就呵呵了,原本想回来后聊些技术的,现在突然想先聊聊我的一些想法,仅供交流. 走出测试 ...

  7. 【Unity Shaders】学习笔记——SurfaceShader(六)混合纹理

    [Unity Shaders]学习笔记——SurfaceShader(六)混合纹理 转载请注明出处:http://www.cnblogs.com/-867259206/p/5619810.html 写 ...

  8. 使用POI导入Excel异常Cannot get a text value from a numeric cell 解决

    POI操作Excel时因为Excel数据Cell有不同的类型,会出现Cannot get a text value from a numeric cell的异常错误. 异常原因:Excel数据Cell ...

  9. java中byte转换int时为何与0xff进行与运算

    在剖析该问题前请看如下代码 public static String bytes2HexString(byte[] b) {  String ret = "";  for (int ...

  10. eclipse打开出错 Error: opening registry key 'Software\JavaSoft\Java Runtime Environment'

    eclipse出现注册错误:①在“打开”输入框中输入“regedit”命令,删除注册表的HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\  的INSTALLDIR删除. 或者 ...