首页 > 后端开发 > php教程 > 大神帮忙看上 如何没执行小弟我的异常处理代码

大神帮忙看上 如何没执行小弟我的异常处理代码

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
发布: 2016-06-13 10:53:40
原创
834 人浏览过

大神帮忙看下 怎么没执行我的错误处理代码啊

PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><?php //定义Error_Handler 函数/** * 定义Error_Handler 函数 * * * @param $error_level 错误级别 * * @param $error_message 错误信息 * * @param $file 错误所在文件 * * @param $line 错误所在行数 * * *///屏蔽程序中的错误error_reporting (0);set_error_handler("error_handler");function error_handler ($error_level, $error_message, $file, $line) {    echo "11111111111";}myerror_method();?>
登录后复制


上面这段代码 调用了没定义的函数myerror_method(); 应该执行我的自定义错误处理函数error_handler()啊
奈何 echo "11111111111";这句没有执行啊,求大牛帮看下呢,跪谢!

------解决方案--------------------
你调用不存在函数,这是致命错误,直接导致脚本结束

你试试 echo $sakdfhgkjad;不存在的变量,则可正常调用自定义错误处理函数

BTW:
如果你非要在致命错误情况下,也能调用,则试试register_shutdown_function函数
------解决方案--------------------
php程序执行时有两个阶段
1、预编译阶段:完成对程序文件的语法分析,并生成中间代码
2、执行阶段:运行中间代码

set_error_handler("error_handler");
是在执行阶段执行的
所以不能处理预编译阶段的错误
------解决方案--------------------
探讨

php程序执行时有两个阶段
1、预编译阶段:完成对程序文件的语法分析,并生成中间代码
2、执行阶段:运行中间代码

set_error_handler("error_handler");
是在执行阶段执行的
所以不能处理预编译阶段的错误
相关标签:
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
运行php错误Parse error: syntax error, unexpected '.',
来自于 1970-01-01 08:00:00
0
0
0
javascript - angularjs 自定义$error
来自于 1970-01-01 08:00:00
0
0
0
统计数据,网站打开mysql error
来自于 1970-01-01 08:00:00
0
0
0
提交管理员密码后报错500 internal server error
来自于 1970-01-01 08:00:00
0
0
0
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板