有没有办法在PHP中捕获致命错误?

时间:2010-04-27 11:46:23

标签: php error-handling fatal-error

  

可能重复:
  How do I catch a PHP Fatal Error

我有这行PHP代码:

thisFunctionDoesNotExist();

它会停止脚本执行:

Fatal error: Call to undefined function

我尝试使用set_error_handler,它确实有助于警告错误类型。但不是致命的错误。正如我从互联网上的各种线程理解的那样,应该可以通过set_error_handler来处理它,但是我无法使它工作。

请你发表工作实例吗?

注意:上面的代码只是一个例子。我不需要检测该函数是否存在。我正在设置一般应用程序错误捕获器。

2 个答案:

答案 0 :(得分:4)

无法捕获致命错误。

虽然不是你问题的答案;如果您有理由相信函数可能不会出现在所有情况下,请查看function_exists();

答案 1 :(得分:1)

http://php.net/manual/en/function.function-exists.php

$functionExists = function_exists("thisFunctionDoesNotExist");

iF($functionExists)
    thisFunctionDoesNotExist();
else
    die("failure");

使用一个字符串作为你的函数并返回true或false