ホームページ  >  記事  >  バックエンド開発  >  カスタマイズされた PHP エラー捕捉コード、register_shutdown_function()、set_error_handler(

カスタマイズされた PHP エラー捕捉コード、register_shutdown_function()、set_error_handler(

WBOY
WBOYオリジナル
2016-07-25 08:45:571559ブラウズ
カスタマイズされた PHP エラー捕捉コード、register_shutdown_function()、set_error_handler()
  1. /**
  2. * @作成者: yangyulong
  3. * @Date: 2015-12-28 22:09:22
  4. * @最終更新者: yangyulong
  5. * @最終更新時刻: 2015-12-28 22:48:49
  6. */
  7. error_reporting(0);
  8. //エラーキャッチ関数を登録
  9. register_shutdown_function('jd_fatal_error');
  10. //エラー処理関数を登録
  11. set_error_handler(' jd_error_handler');
  12. function jd_fatal_error(){
  13. if ($e = error_get_last()) {
  14. switch ($e['type']) {
  15. case E_ERROR:
  16. case E_PARSE:
  17. case E_CORE_ERROR:
  18. case E_COMPILE_ERROR:
  19. case E_USER_ERROR:
  20. //すべてのテスト エラー タイプは次の関数を使用してキャプチャされます
  21. jd_error_handler($e['type'], $e['message'], $e['file'], $e['line ' ]);
  22. Break;
  23. }
  24. }
  25. }
  26. /**
  27. * 捕捉错误的関数数
  28. *
  29. * @method jd_error_handler
  30. *
  31. * @param [タイプ] $type [説明]
  32. * @param [タイプ] $message [説明]
  33. * @param [タイプ] $file [説明] ]
  34. * @param [タイプ] $line [説明]
  35. *
  36. * @return [タイプ] [説明]
  37. */
  38. function jd_error_handler($type, $message, $file, $line){
  39. echo ''.$ type ':'.$message.' '.$line.' 行 .
    ';
  40. }
  41. print_r(xx());
  42. // print_r(debug_backtrace());
  43. // print_r(debug_print_backtrace());
コードをコピー
カスタマイズ、PHP、登録

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。