<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
拉時,再把註冊進去的執行, 而在這之間你的腳本發生錯誤,將會直接拋出該錯誤。