我可以将一个方法挂钩到我的php文件,如果任何页面崩溃应该通过电子邮件发送给我页面和错误?

Pen*_*m10 2 php error-handling

我想知道我是否可以在include中挂钩一个方法,如果我的任何页面(使用包含的内容)崩溃,它将通过电子邮件发送调试日志.

是否存在致命错误后执行的方法?

Age*_*rum 5

你可以用register_shutdown_function()它.您将函数名称作为参数传递给此函数,并且在应用程序退出时,无论出于何种原因,都会调用该函数.

您可以利用这段时间来捕获并记录任何致命错误,但您无法从中恢复(毕竟它们是致命的).我认为在这个功能中遇到一个致命的错误,它的游戏结束了.没有记录.

在关机功能中,您需要检查关闭是否是由致命错误引起的,如果是,则运行日志代码:

function shutdown() {
  $lastError = error_get_last(); // returns an array with error information:
    switch($lastError['type']){
      case E_ERROR:
      case E_PARSE:
      case E_CORE_ERROR:
      case E_CORE_WARNING:
      case E_COMPILE_ERROR:
      case E_COMPILE_WARNING:
          // log the fatal error
          break;
    }
}
Run Code Online (Sandbox Code Playgroud)