PHP调试函数和日志记录函数分享
网络编程 2021-07-05 09:08www.168986.cn编程入门
这篇文章主要介绍了PHP调试函数和日志记录函数分享,本文分享的函数都是自己项目中使用的,需要的朋友可以参考下
网站程序开发过程经常需要调试,发布阶段也需要记录运行日志,方便发现问题和还原事件。这就要求有调试和日志记录功能。
狼蚁网站SEO优化分别写了用于调试的函数和用于记录错误的函数。
使用方法很简单,且自动根据日期生成日志文件
代码如下:
//调试时,多个参数都可以
sysdebug("hello");
sysdebug("hello", "tiger is ing now");
//错误记录也一样
syserror("error");
syserror("error", "unfortunately tiger is dead ", "we are sad");
php调试和日志记录函数,如下
代码如下:
/
记录调试信息
/
function sysdebug($msg) {
if (defined("DEBUG_MODE")) {
//TODO 检测调试开关,发布时不打印
$params = func_get_args();
$traces = debug_backtrace();
$trace = array_pop($traces);
sysrecord($params, $trace, 'debug');
}
}
/
记录错误信息
/
function syserror($msg) {
$params = func_get_args();
$traces = debug_backtrace();
$trace = array_pop($traces);
sysrecord($params, $trace, 'error');
}
/
写文件
@ignore
/
function sysfile($filename, $msg, $mode = null) {
$path = dirname($filename);
if (!file_exists($path)) {
mkdir($path, 0666, true);
}
$flag = LOCK_EX;
if ($mode) {
switch ($mode) {
case "add":
$flag = FILE_APPEND | LOCK_EX;
break;
case "a":
$flag = FILE_APPEND | LOCK_EX;
break;
default:
break;
}
}
file_put_contents($filename, $msg, $flag);
}
/
记录信息
@ignore
/
function sysrecord($params, $trace, $level) {
$path = dirname(__FILE__) . "/logs/";
//TODO 日志保存目录最好修改一下
$file = $trace['file'];
$func = $trace['function'];
if ($func == "sys$level") {
$func = '';
}
$filename = $path . "$level/" . date("Y-m-d") . '.log';
$msg = "[" . date("m-d H:i:s") . "] File:\"" . basename($file) . "\" Func:\"" . $func . "\" Msg:" . json_encode($params) . "\r\n";
sysfile($filename, $msg, 'add');
}
上一篇:PHP中开启gzip压缩的2种方法
下一篇:php上传文件问题汇总
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程