首頁 >後端開發 >php教程 >register_shutdown_function函數在php中具體應用(含詳解)

register_shutdown_function函數在php中具體應用(含詳解)

烟雨青岚
烟雨青岚轉載
2020-06-08 15:33:502658瀏覽

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{
//此处处理其它一些业务逻辑
}
}
}

2. 引入註冊函數

在程式入口處,引入CustomHandle.php文件,同時,註冊register_shutdown_function函數,如下:

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

此時,不管你的php程式碼執行是否成功,最後都會CustomHandle類別中的systemError方法。

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

版權聲明:本文為CSDN部落客「木魚大叔」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處連結及本聲明。 原文連結:

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

推薦教學:《

PHP教學### 》###

以上是register_shutdown_function函數在php中具體應用(含詳解)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除