您现在的位置是:网站首页>PHP技术PHP技术
TP5自定义日志记录到文件方法
草谷2019-03-31【PHP技术】
简介通过自定义日志记录到文件,可以方便与线上生产环境中对报错等信息的记录,便于调试。也可以用于调试类似于支付回调等异步请求中返回结果
话不多说,直接上代码
/**
* [payLog 日志log]
* @param [type] $mark [日志的备注,显示在日志文件中]
* @param [type] $log_content [日志内容,支持数组或字符串,自动转json格式]
* @param string $keyp [日志名,默认为当前时间命名]
* @return [type] [description]
*/
function mylog($mark, $log_content, $keyp = "") {
$max_size = 30000000;
if ($keyp == "") {
$log_filename = RUNTIME_PATH . '/tlogs/' . date('Ym-d') . ".log";
} else {
$log_filename = RUNTIME_PATH . '/tlogs/' . $keyp . ".log";
}
if (file_exists($log_filename) && (abs(filesize($log_filename)) > $max_size)) {
rename($log_filename, dirname($log_filename) . DS . date('Ym-d-His') . $keyp . ".log");
}
$t = microtime(true);
$micro = sprintf("%06d", ($t - floor($t)) * 1000000);
$d = new \DateTime (date('Y-m-d H:i:s.' . $micro, $t));
if(is_array($log_content)){
$log_content = JSONReturn($log_content);
}
file_put_contents($log_filename, ' ' . $d->format('Y-m-d H:i:s u') . " key:" . $mark . "\r\n" . $log_content . "\r\n------------------------ --------------------------\r\n", FILE_APPEND);
}用于调试服务端三方接口的异步回调会比较方便。
很赞哦! (0)
上一篇: PHP将银行卡号处理为每4位一个空格
相关文章
文章评论
点击排行
TP5入口文件被修改的问题处理