1
Possible Duplicate:
How do I catch a PHP Fatal ErrorPHP忽略自定義錯誤處理程序
我想創建一個自定義的錯誤處理程序,但PHP忽略它仍然使用內置的錯誤處理程序。下面的例子給出了一個內置的致命錯誤,因爲test()沒有被定義:
function critical_error($error_number,$error_string,$error_file,$error_line,$error_context) {
echo "<strong>error:</strong> echo ".$error_string;
exit();
}
set_error_handler("critical_error",8191);
test();
exit;
有什麼建議嗎?
不要以爲他是8191是E_RECOVERABLE_ERROR及以上的所有內容。 http://php.net/manual/en/errorfunc.constants.php –
你是對的通知部分。 _致命錯誤:調用未定義的函數__是'E_ERROR',用戶定義的錯誤處理程序不會被觸發。 –
感謝您的建議,我認爲問題出在這裏,我沒有添加E_ALL。 test()沒有定義,我希望PHP給我一個致命的錯誤,看看自定義錯誤處理程序是否會捕獲它。 – mauzilla