php异常处理使用示例


Posted in PHP onFebruary 25, 2014
<?php
//禁止错误输出
error_reporting(0);
//设置错误处理器
set_error_handler('errorHandler');
register_shutdown_function('fatalErrorHandler');
class Test{
public function index(){
//这里发生一个警告错误,出发errorHandler 
echo $undefinedVarible;
}
}
function errorHandler($errno,$errstr,$errfile,$errline){
 $arr = array(
 '['.date('Y-m-d h-i-s').']',
 'http://www.baidu.com',
 '|',
 $errstr,
 $errfile,
 'line:'.$errline,
 );
 //写入错误日志
//格式 :  时间 uri | 错误消息 文件位置 第几行
 error_log(implode(' ',$arr)."\r\n",3,'./test.txt','extra');
 echo implode(' ',$arr)."\r\n";
}
//捕获fatalError
function fatalErrorHandler(){
 $e = error_get_last();
 switch($e['type']){
 case E_ERROR:
 case E_PARSE:
 case E_CORE_ERROR:
 case E_COMPILE_ERROR:
 case E_USER_ERROR:
  errorHandler($e['type'],$e['message'],$e['file'],$e['line']);
  break; 
}
}
$test = new Test();
////这里发生一个警告错误,被errorHandler 捕获
$test->index();
//发生致命错误,脚本停止运行触发 fatalErrorHandler 
$test = new Tesdt();
$test->index();
 
PHP 相关文章推荐
类的另类用法--数据的封装
Oct 09 PHP
PHP用mysql数据库存储session的代码
Mar 05 PHP
php下统计用户在线时间的一种尝试
Aug 26 PHP
PHP autoload与spl_autoload自动加载机制的深入理解
Jun 05 PHP
解决php使用异步调用获取数据时出现(错误c00ce56e导致此项操作无法完成)
Jul 03 PHP
php初始化对象和析构函数的简单实例
Mar 11 PHP
学习php设计模式 php实现抽象工厂模式
Dec 07 PHP
PHP共享内存用法实例分析
Feb 12 PHP
PHP实现十进制、二进制、八进制和十六进制转换相关函数用法分析
Apr 25 PHP
php框架CodeIgniter主从数据库配置方法分析
May 25 PHP
PHP使用mongoclient简单操作mongodb数据库示例
Feb 08 PHP
php下的原生ajax请求用法实例分析
Feb 28 PHP
php反射应用示例
Feb 25 #PHP
php数组去重复数据示例
Feb 25 #PHP
php分页函数示例代码分享
Feb 24 #PHP
php对数组排序代码分享
Feb 24 #PHP
php判断ip黑名单程序代码实例
Feb 24 #PHP
thinkphp的c方法使用示例
Feb 24 #PHP
php根据操作系统转换文件名大小写的方法
Feb 24 #PHP
You might like
PHP输出控制功能在简繁体转换中的应用
2006/10/09 PHP
基于JQuery的Select选择框的华丽变身
2011/08/23 Javascript
jQuery中slideUp()方法用法分析
2014/12/24 Javascript
jqueryMobile使用示例分享
2016/01/12 Javascript
浅谈JS中逗号运算符的用法
2016/06/12 Javascript
jquery心形点赞关注效果的简单实现
2016/11/14 Javascript
jQuery 常见小例汇总
2016/12/14 Javascript
Map.vue基于百度地图组件重构笔记分享
2017/04/17 Javascript
JavaScript输入框字数实时统计更新
2017/06/17 Javascript
总结js中的一些兼容性易错的问题
2017/12/18 Javascript
vue2.0实现前端星星评分功能组件实例代码
2018/02/12 Javascript
vue element项目引入icon图标的方法
2018/06/06 Javascript
JavaScript错误处理操作实例详解
2019/01/04 Javascript
js数组去重的方法总结
2019/01/18 Javascript
vue-router 前端路由之路由传值的方式详解
2019/04/30 Javascript
微信小程序合法域名配置方法
2019/05/06 Javascript
node.js中stream流中可读流和可写流的实现与使用方法实例分析
2020/02/13 Javascript
vue webpack build资源相对路径的问题及解决方法
2020/06/04 Javascript
用smtplib和email封装python发送邮件模块类分享
2014/02/17 Python
Python使用urllib2模块抓取HTML页面资源的实例分享
2016/05/03 Python
Python中遇到的小问题及解决方法汇总
2017/01/11 Python
Python3使用SMTP发送带附件邮件
2020/06/16 Python
python3实现字符串的全排列的方法(无重复字符)
2018/07/07 Python
python wxpython 实现界面跳转功能
2019/12/17 Python
Python如何实现邮件功能
2020/05/27 Python
美国在线精品家居网站:Burke Decor
2017/04/12 全球购物
机电工程专业应届生求职信
2013/10/03 职场文书
函授本科毕业自我鉴定
2013/10/09 职场文书
宿舍卫生检讨书
2014/01/16 职场文书
2014年仓库管理员工作总结
2014/11/18 职场文书
党员带头倡议书
2015/04/29 职场文书
2015年街道除四害工作总结
2015/05/15 职场文书
于丹讲座视频观后感
2015/06/15 职场文书
采购部2015年度工作总结
2015/07/24 职场文书
Vue和Flask通信的实现
2021/05/19 Vue.js
python编程学习使用管道Pipe编写优化代码
2021/11/20 Python