首頁  >  文章  >  後端開發  >  register_shutdown_function()沒有回呼?

register_shutdown_function()沒有回呼?

WBOY
WBOY原創
2016-10-17 09:30:181151瀏覽

<code><?php
register_shutdown_function("myerror");
function myerror(){
    error_get_last();
    echo "here";
}
function test(){}
function test(){}</code>

這種情況下,register_shutdown_function()沒有觸發,為啥啊?謝謝

回覆內容:

<code><?php
register_shutdown_function("myerror");
function myerror(){
    error_get_last();
    echo "here";
}
function test(){}
function test(){}</code>

這種情況下,register_shutdown_function()沒有觸發,為啥啊?謝謝

register_shutdown_function函數是在腳本正常退出或用戶調用exit等方法時, 才會被調用, 注意是正常退出, 而當腳本發生錯誤時(上面的方法同名), 是不會被觸發的,

相當於每呼叫register_shutdown_function,就把你要註冊進去的function放進【假裝是隊列吧】,等到腳本正常退出或顯示呼叫exit拉時,再把註冊進去的執行, 而在這之間你的腳本發生錯誤,將會直接拋出該錯誤。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn