Rumah > pembangunan bahagian belakang > tutorial php > register_shutdown_function函数在php中具体应用(含详解)

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

烟雨青岚
Lepaskan: 2023-04-08 19:36:02
ke hadapan
2684 orang telah melayarinya

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 = &#39;&#39;;
if ($error = error_get_last()) {
//程序报错处理,通常会跳转到用户自定义的页面,同时记录错误信息
$separator = "\r\n";
$message .= "错误:" . $error[&#39;message&#39;] . $separator;
$message .= "文件:" . $error[&#39;file&#39;] . $separator;
$message .= "行数:" . $error[&#39;line&#39;] . $separator;
$message = str_replace($separator, &#39;<br />&#39;, $message);
header(&#39;Location:http://&#39;.$_SERVER[&#39;HTTP_HOST&#39;].&#39;/error.php&#39;);
exit;
}else{
//此处处理其它一些业务逻辑
}
}
}
Salin selepas log masuk

2. 引入注册函数

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

require &#39;CustomHandle.php&#39;;
register_shutdown_function(array(&#39;com\antp\CustomHandle&#39;,&#39;systemError&#39;));
Salin selepas log masuk

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

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

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

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

推荐教程:《PHP教程

Atas ialah kandungan terperinci register_shutdown_function函数在php中具体应用(含详解). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
php
sumber:csdn.net
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan