文档章节

自定义 php 错误捕获代码

anziguoer
 anziguoer
发布于 2015/12/28 22:51
字数 164
阅读 143
收藏 3
<?php
/**
 * @Author: yangyulong
 * @Date:   2015-12-28 22:09:22
 * @Last Modified by:   yangyulong
 * @Last Modified time: 2015-12-28 22:48:49
 */
error_reporting(0);
//注册错误捕捉函数
register_shutdown_function('jd_fatal_error');

//注册错误处理函数
set_error_handler('jd_error_handler');

function jd_fatal_error(){
	if ($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:
			//所有测错误类型都用下面的函数同意捕获 
				jd_error_handler($e['type'], $e['message'], $e['file'], $e['line']);
			break;
		}
	}
}

/**
 * 捕获错误的函数
 *
 * @method jd_error_handler
 *
 * @param  [type]           $type    [description]
 * @param  [type]           $message [description]
 * @param  [type]           $file    [description]
 * @param  [type]           $line    [description]
 *
 * @return [type]                    [description]
 */
function jd_error_handler($type, $message, $file, $line){
	echo '<b>'.$type.':'.$message.' in '.$file.' on '.$line. ' line .</b><br />';
}

print_r(xx());

// print_r(debug_backtrace());
// print_r(debug_print_backtrace());



© 著作权归作者所有

共有 人打赏支持
anziguoer

anziguoer

粉丝 29
博文 81
码字总数 39619
作品 0
海淀
程序员
私信 提问
PHP 完善的 Error / Exception 的捕获与处理

PHP(PHP_VERSION >= 7) 的 Error / Exception 的捕获与处理还是值得一说的,优雅处理错误与异常,在提升框架友好度的同时,也提升了开发效率。 PHP 错误等级 以上为 PHP 的一些错误监听级别...

big_cat
05/22
0
0
贝尔的技术博客 cnbeir@163.com PHP中的错误处理、异常处理机制

在编写php程序时,错误处理是一个重要的部分。如果程序中缺少错误检测代码,那么看上去很不专业,也为安全风险敞开了大门 例: <?php $a = fopen('test.txt','r'); //这里并没有对文件进行判...

雍雍_yoyo
2013/01/31
0
0
PHP核心技术与最佳实践 读书笔记 第一章面向对象思想的核心概念

第一章 面向对象思想的核心概念 面向对象程序设计是一种程序设计范型,同时也是一种程序开发方法。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性,灵活性和可扩展性...

lilugirl
2013/06/08
0
0
php 异常和错误处理机制

php只有手动抛出异常才能捕获异常 运行图 自定义 异常处理函数(只能捕获到异常和非致命的错误,致命的错误还是会挂掉) 运行图: 简单处理fetal error的错误 运行图:

eatnothing
2015/10/23
179
0
Modern PHP 笔记(二):良好实践

相比于上一篇笔记Modern PHP 笔记(一):语言特性,第二部分侧重讲标准和良好实践,更加实战。 第三章:标准 PHP-FIG(PHP Framework Interop Group)2009年 框架的互操作性 通过接口、自动...

郝开心信札
2017/12/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Java 如何实现线程间通信?

正常情况下,每个子线程完成各自的任务就可以结束了。不过有的时候,我们希望多个线程协同工作来完成某个任务,这时就涉及到了线程间通信了。 本文涉及到的知识点: thread.join(), object....

颖辉小居
32分钟前
2
0
记一次阿里云服务器运行慢排除

公司测试环境用的阿里云服务器+docker部署的,一共跑了14个项目。之前几个月一直OK,最近几天突然很卡很慢。刚开始以为是项目问题,又是扩大内存,又是清减插件,甚至停了一半项目。结果CPU...

李玉长
32分钟前
2
0
统一客服消息返回错误:{"errcode":43004,"errmsg":"require subscribe hint: [9Vv08633952]"}

公众号或者小程序发送客服消息错误: {"errcode":43004,"errmsg":"require subscribe hint: [9Vv08633952]"} 场景:小程序使用公众号的服务消息,推送消息,如果接收人没有关注公众号,就会出...

tianma3798
43分钟前
1
0
Rainbond V5.0 Beta公测公告

Rainbond支撑企业应用的开发、架构、交付和运维的全流程,通过“无侵入”架构无缝衔接各类企业应用,底层资源可以对接和管理IaaS、虚拟机和物理服务器 Rainbond V5.0即日起开启Beta版本公测,...

好雨云帮
今天
2
0
Word Pattern(leetcode290)

Given a pattern and a string str, find if str follows the same pattern. Here follow means a full match, such that there is a bijection between a letter in pattern and a non-empt......

woshixin
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部