控制PHP的错误输出方式:直接输出至荧幕或将错误信息记录到错误日志文件内
2014-08-21 16:43
609 查看
在开发过程中,我们需要即时知道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();
但是如果程序发布到服务器上之后,再让他把错误直接输出到荧幕不仅会吓着用户,而且容易被黑客利用错误,所以此时我们可以设置为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();
相关文章推荐
- 控制PHP的错误输出方式:直接输出至荧幕或将错误信息记录到错误日志文件内
- PHP的错误信息记录到日志文件中
- 修改php.ini以达到屏蔽错误信息并记录日志
- php使用指定的文件记录错误报告日志
- log4j控制日志输出文件名称的两种方式
- CENTOS下PHP不能将其错误日志单独输出到一个文件的问题解决
- Qt输出打印信息的日志到文件(简单的两种方式)
- bash - 将正常输出和错误信息保存到日志文件,同时在终端输出
- JDK java.util.logging.Logger以配置文件方式控制日志输出
- PHP 错误与异常 笔记与总结(5)配置文件中与错误日志相关的选项 && 将错误记录到指定的文件中
- asp.net 错误信息记录到日志文件
- 修改php.ini以达到屏蔽错误信息并记录日志
- 存储过程,捕获错误信息记录到日志文件中
- 用外部表的方式查询当天数据库alert日志文件中当天所有的ora-错误信息
- 将日志中的错误信息输出到文件中
- php 写入文件,日志记录信息方法
- 将错误信息记录到日志文件
- 用外部表的方式查询alert日志文件中ora-错误信息
- [记录]编译器错误信息: CS0016: 未能写入输出文件
- nginx默认虚拟主机,用户认证,域名重定向,日志,静态文件不记录日志,防盗链,访问控制,php解析