kazpgmの日記

『プログラム自動作成@自動生成』作成の日記

「SQLログ取得.xls」のつづき。・・・getsqllog.phpエラーハンドリングした。

SQLログ取得.xls」のつづき。・・・
■getsqllog.phpエラーハンドリングした。以下を追加した。追加後のソースはhttp://d.hatena.ne.jp/kazpgm/20100125/1264441494。 <=2/25 このロジックはphp4ではうまく動かないので削除した。

// 独自のエラー処理(E_NOTICE以外)を行う
error_reporting(E_ALL ^ E_NOTICE);
$old_error_handler = set_error_handler("userErrorHandler", E_ALL ^ E_NOTICE);

// エラーハンドリング
function userErrorHandler ($errno, $errmsg, $filename, $linenum, $vars) {

    // エラー文字列の連想を定義
    // 実際に考慮するエントリは 2,8,256,512,1024のみ
    $errortype = array (
                1   =>  "Error",
                2   =>  "Warning",
                4   =>  "Parsing Error",
                8   =>  "Notice",
                16  =>  "Core Error",
                32  =>  "Core Warning",
                64  =>  "Compile Error",
                128 =>  "Compile Warning",
                256 =>  "User Error",
                512 =>  "User Warning",
                1024=>  "User Notice"
                );
    echo 'The error occurred. ' . 'Date: ' . date('Y/m/d H:i:s') . 
        ' Errno: ' . $errno . 
        ' Errortype: ' . $errortype[$errno] . 
        ' Message: ' . $errmsg . 
        ' Filename: ' . $filename .
        ' Linenum: ' . $linenum . "<br />\n";
    exit;
}

02/09 20:00-21:30
02/25 22:30-22:40