這篇文章主要介紹了register_shutdown_function 函數(shù)是什么,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
鄧州網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián),鄧州網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為鄧州成百上千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站制作要多少錢,請找那個售后服務(wù)好的鄧州做網(wǎng)站的公司定做!php開發(fā)測試及線上的時候可以根據(jù)不同情況設(shè)定錯誤和異常處理需要用到有
設(shè)定錯誤和異常處理三函數(shù)
register_shutdown_function(array(‘Debug’,'fatalError’)); //定義PHP程序執(zhí)行完成后執(zhí)行的函數(shù) set_error_handler(array(‘Debug’,'appError’)); // 設(shè)置一個用戶定義的錯誤處理函數(shù) set_exception_handler(array(‘Debug’,'appException’)); //自定義異常處理。
下面講一下register_shutdown_function() 函數(shù).
功能:register_shutdown_function() 函數(shù)可實(shí)現(xiàn)當(dāng)程序執(zhí)行完成后執(zhí)行的函數(shù),其功能為可實(shí)現(xiàn)程序執(zhí)行完成的后續(xù)操作。程序在運(yùn)行的時候可能存在執(zhí)行超時,或強(qiáng)制關(guān)閉等情況,但這種情況下默認(rèn)的提示是非常不友好的,如果使用register_shutdown_function()函數(shù)捕獲異常,就能提供更加友好的錯誤展示方式,同時可以實(shí)現(xiàn)一些功能的后續(xù)操作,如執(zhí)行完成后的臨時數(shù)據(jù)清理,包括臨時文件等。
可以這樣理解調(diào)用條件:
1、當(dāng)頁面被用戶強(qiáng)制停止時
2、當(dāng)程序代碼運(yùn)行超時時
3、當(dāng)PHP代碼執(zhí)行完成時,代碼執(zhí)行存在異常和錯誤、警告
實(shí)例說明
1. 一個簡介的例子 , 調(diào)用一個函數(shù)
<?php function test() { echo "test()"; } register_shutdown_function(array("test")); echo "show: "; ?>
這個例子輸出
show: test()
這個函數(shù)的作用就是在退出腳本前,調(diào)用已經(jīng)注冊的函數(shù),并執(zhí)行該函數(shù)。
2. 在類中用一個數(shù)組作為一個參數(shù)
<?php class ClassDemo { public function __construct() { register_shutdown_function(array($this, "f")); } public function f() { echo "f()"; } } $demo = new ClassDemo(); echo "before </br>"; ?>
輸出:
before f()
3. 帶有參數(shù)的例子:
<?php function f($str) { echo $str."<br>"; } register_shutdown_function("f","hello"); class ClassDemo { public function __construct() { register_shutdown_function(array($this, "f"),"hello"); } public function f($str) { echo "f():".$str; } } $demo = new ClassDemo(); echo "before </br>"; ?>
注意事項
1,register_shutdown_function()函數(shù)可重復(fù)調(diào)用,但執(zhí)行的順序與注冊的順序相同
2,如果在調(diào)用register_shutdown_function()函數(shù)之前有exit()函數(shù)調(diào)用,register_shutdown_function()函數(shù)將不能執(zhí)行
3,PHP4后支持注冊函數(shù)參數(shù)傳遞(PHP視頻教程)
4,在某些服務(wù)端,如Apache,當(dāng)前目錄在register_shutdown_function()函數(shù)中能夠改變
5,register_shutdown_function()函數(shù)執(zhí)行在headers發(fā)送之后
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享register_shutdown_function 函數(shù)是什么內(nèi)容對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián),詳細(xì)的解決方法等著你來學(xué)習(xí)!
分享題目:register_shutdown_function函數(shù)是什么-創(chuàng)新互聯(lián)
網(wǎng)頁鏈接:http://bm7419.com/article40/dssgho.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊、微信公眾號、服務(wù)器托管、微信小程序、ChatGPT、網(wǎng)站內(nèi)鏈
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容