register_shutdown_function在php中的應用(含詳解)
某些情況下,我們需要在程式執行結束時,做一些後續的處理工作,這時候,php的register_shutdown_function函數就可以幫我們來實現這個功能。
一 register_shutdown_function函數簡介
當PHP程式執行完成後,自動執行register_shutdown_function函數,該函數需要一個參數,用來指定由誰處理這些後續的工作。其中,程式執行完成,分為以下幾種情況:
⑴ 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{
//此处处理其它一些业务逻辑
}
}
}
在程式入口處,引入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/52291237PHP教學### 》###以上是register_shutdown_function函數在php中具體應用(含詳解)的詳細內容。更多資訊請關注PHP中文網其他相關文章!