控制PHP的错误输出方式:直接输出至荧幕或将错误信息记录到错误日志文件内

在开发过程中,我们需要即时知道PHP哪里有错误,所以设置成True,此时如果有错误,程序会马上输出错误到显示器.

但是如果程序发布到服务器上之后,再让他把错误直接输出到荧幕不仅会吓着用户,而且容易被黑客利用错误,所以此时我们可以设置为false,这样程序的错误就不会输出到显示器了,而是把错误信息保存在错误日志文件内(做一下深入的思考,这里你完全可以让这个函数发送错误信息到你的信箱或进行其他的操作都可以,这就要看你的想象力了).

需要注意的是:如果你的服务器是Linux操作系统,那么需要让日志文件的存放目录具备写权限.

<?PHP

/*

//如果要轉載本文請注明出處,免的出現版權紛爭,我不喜歡看到那種轉載了我的作品卻不注明出處的人 Seven{See7di#Gmail.com}

錯誤的輸出方式:true直接輸出到螢幕;false輸出到錯誤日誌檔案/@cache/error.log
*/
Define("YJ_SysError",True);

//错误输出方式
IF(YJ_SysError){
    Error_reporting(E_ALL);
}Else{
    Function MyError($code, $msg, $file, $line,$context){
        $IntTime=(time()+8*3600);$Now=Gmdate("Y-m-d H:i:s",$IntTime);
        $Err='['.$Now."] Fatal error: $msg in $file on line $line".Chr(10);
        Error_log($Err,3,$_SERVER['DOCUMENT_ROOT']."/error.log");Die();
    }Set_error_handler('MyError');
}

echo $aaa;

callUndefFunc();

原文地址:https://www.cnblogs.com/see7di/p/2239808.html