register_shutdown_function函数在php中具体应用含详解

register_shutdown_function在PHP中的应用(含详解)

某些情况下,我们需要在程序执行结束时,做一些后续的处理工作,这个时候,PHP的register_shutdown_function函数就可以帮我们来实现这个功能

一 register_shutdown_function函数简介

PHP程序执行完成后,自动执行register_shutdown_function函数,该函数需要一个参数,用来指定由谁处理这些后续的工作。其中,程序执行完成,分为以下几种情况:

PHP代码执行过程中发生错误

PHP代码顺利执行成功

PHP代码运行超时

页面用户强制停止

二 register_shutdown_function函数的使用步骤

register_shutdown_function函数的使用非常简单,最多2步即可。

1. 自定义一个PHP类,名字为CustomHandle.PHP,内如如下:

<?PHP
namespace com\antp;
class CustomHandle {
public static function systemError() {
$message = '';
if ($error = error_get_last()) {
//程序报错处理,通常会跳转用户自定义页面,同时记录错误信息
$separator = \r\n;
$message .= 错误: . $error['message'] . $separator;
$message .= 文件: . $error['file'] . $separator;
$message .= 行数: . $error['line'] . $separator;
$message = str_replace($separator, '<br />', $message);
header('Location:http://'.$_SERVER['HTTP_HOST'].'/error.PHP');
exit;
}else{
//此处处理其它一些业务逻辑
}
}
}

2. 引入注册函数

在程序入口处,引入CustomHandle.PHP文件,同时,注册register_shutdown_function函数,如下:

require 'CustomHandle.PHP';
register_shutdown_function(array('com\antp\CustomHandle','systemError'));

此时,不管你的PHP代码执行是否成功,最后都会CustomHandle类中的systemError方法

————————————————

版权声明:本文为CSDN博主「木鱼大叔」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接https://blog.csdn.net/tdcqfyl/article/details/52291237

推荐教程:《PHP教程

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...