PHP は毎日の日付ごとにエラーをログに記録します
リリース: 2016-07-25 09:02:24
ファイル 1: [error.class.php] エラー処理を書き換えてファイル形式のログ出力を実行します。1 回目はグリニッジ時間、2 回目は北京時間で、使用時にエラー情報が続きます。これを含めるだけです。ファイル。 もちろん、必要に応じてファイル形式を変更することもできます。たとえば、後でメール機能を追加してメールに送信することもできます。
ファイル 2: [test.php] テスト ファイル。テスト用のエラー ステートメントが含まれています。
functionExceptionHandler(){- error_reporting(E_ALL ^ E_NOTICE);
- date_default_timezone_set('Etc/GMT-8') //タイムゾーンを設定します
-
- ini_set('display_errors', 0); / /エラーをログに記録します
- ini_set('error_log','D:\'.date('Y-m-d').'_weblog.txt');
- ini_set('log_errors',1); /エラー ログの記録を有効にする
- ini_set('ignore_repeat_errors',1); //同じファイルの同じコード行に出現するエラー情報を繰り返し記録しないでください。
- $user_define_err = error_get_last();
- if($user_dependent_err['type'] > 0)
- {
- switch($user_define_err['type']){
- case 1:
- $user_define_errType = '致命的なランタイム エラー ( E_ERROR)';
- ブレーク;
- ケース 2:
- $user_dependent_errType = '致命的ではないランタイム エラー (E_WARNING)';
- ブレーク;
- ケース 4:
- $user_dependent_errType = 'コンパイル時構文解析エラー (E_PARSE)' ;
- ブレーク;
- ケース 8:
- $user_define_errType = '実行時プロンプト (E_NOTICE)';
- ブレーク;
- ケース 16:
- $user_dependent_errType = 'PHP 内部エラー (E_CORE_ERROR)';
- ブレーク;
- ケース 32:
- $ user_define_errType = ' PHP 内部警告 (E_CORE_WARNING)';
- ブレーク;
- case 64:
- $user_dependent_errType = 'Zend スクリプト エンジンの内部エラー (E_COMPILE_ERROR)';
- ブレーク;
- case 128:
- $user_dependent_errType = 'Zend スクリプト エンジンの内部警告 (E_COMPILE_WARNING) ';
- ブレーク;
- ケース 256:
- $user_dependent_errType = 'ユーザー定義エラー (E_USER_ERROR)';
- ブレーク;
- ケース 512:
- $user_dependent_errType = 'ユーザー定義警告 (E_USER_WARNING)';
- ブレーク; :
- $user_define_errType = 'ユーザー定義プロンプト (E_USER_NOTICE)';
- ブレーク;
- case 2048:
- $user_dependent_errType = 'コード プロンプト (E_STRICT)';
- ブレーク;
- case 4096:
- $user_dependent_errType = 'はい、致命的なエラーをキャッチしました(E_RECOVERABLE_ERROR)';
- ブレーク;
- ケース 8191:
- $user_dependent_errType = 'すべてのエラー警告 (E_ALL)';
- ブレーク;
- デフォルト:
- $user_dependent_errType = '不明なタイプ';
- ブレーク;
- }
- $msg = sprintf ('%s %s %s %s %s',date("Y-m-d H:i:s"),$user_defined_errType,$user_dependent_err['message'],$user_dependent_err['file'],$ user_dependent_err['line ']);
- error_log($msg,0);
- }
- }
-
- register_shutdown_function('例外ハンドラー');
- ?>
-
-
コードをコピー
//ファイル 2: [test.php]- include('error.class.php');
- echo $_COOKIE[' aaaaadfa']; //この Cookie が存在しない場合はエラーが生成され、テストに使用されます
- echo $_SESSION['aaaaadfa'] //このセッションが存在しない場合はエラーが生成され、使用されますテスト用
- ? >
-
-
-
コードをコピー
|
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31