PHP函数register_shutdown_function的使用示例

Posted 与f

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP函数register_shutdown_function的使用示例相关的知识,希望对你有一定的参考价值。

 

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

函数简介

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

第一种:php代码执行过程中发生错误

第二种:php代码顺利执行成功

第三种:php代码运行超时

第四种:页面被用户强制停止

使用步骤

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

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

<?php
namespace comantp;
 
class CustomHandle {
    
    public static function systemError() {
        $message = ‘‘;
        if ($error = error_get_last()) {
            //程序报错处理,通常会跳转到用户自定义的页面,同时记录错误信息
            $separator = "
";
            $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(‘comantpCustomHandle‘,‘systemError‘));

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

 

 

转:https://blog.csdn.net/tdcqfyl/article/details/52291237

参考:http://php.net/manual/zh/function.register-shutdown-function.php

 

以上是关于PHP函数register_shutdown_function的使用示例的主要内容,如果未能解决你的问题,请参考以下文章

php如何根据函数名打印出函数内容

php之快速入门学习-15(php函数)

PHP走进 PHP 第五课 函数

PHP基础入门PHP函数基础

如何用自定义函数文件对另一个php里的函数重写

PHP strtotime() 函数