ThinkPHP5下自己写日志
2024-09-14 01:45:09
1.首先在common.php公共函数文件下写需要的公共函数(appalication/common.php文件下),在此文件下写的函数可以在项目任意页面直接调用
/**
* 打印log日志
* @param 文件名 第几行 日志内容
*/
function wx_log($basename=null,$num=null,$msg=null)
{
//$msg = [2018-04-11 09:22:56]文件名:wxpay,第29行,[info]:日志信息
$msg = '['.date("Y-m-d H:i:s").']'.'文件名:'.$basename.',第'.$num.'行,'.'[info]:'.$msg; // 日志文件名:日期.txt
$path = ROOT_PATH.DS.'public'. DS .'logs'. DS .date("Ymd").'.txt'; file_put_contents($path, $msg.PHP_EOL,FILE_APPEND);
}
此时,我把日志文件放在了/public/logs/目录下,日志文件名是按照当前日期的格式命名,方便排错
2.调用:直接使用定义的函数,并传入参数(操作的文件名,行数,日志信息)
wx_log('wxpay','29','日志信息');
打印的日志信息如:[2018-04-11 09:22:56]文件名:wxpay,第29行,[info]:日志信息
注意:
很多时候记录日志需要换行。不建议使用\r\n,因为:
在windows中\r\n是换行
在Mac中\r是换行
在Liunx中\n是换行
但是PHP提供了一个常量来匹配不同的操作系统,即:PHP_EOL
如:file_put_contents("log.txt", "Hello world everyone.".PHP_EOL, FILE_APPEND);
最新文章
- Python基础篇【第8篇】: Socket编程(二)SocketServer
- 【linux】学习3
- handler 异步执行(进度条加载到100)
- Python基础(10)--数字
- SQL Server数据库的三种恢复模式:简单恢复模式、完整恢复模式和大容量日志恢复模式(转载)
- 洛谷P2723 丑数 Humble Numbers
- MyBatis(3.2.3) - Paginated ResultSets using RowBounds
- Spring 官方下载地址(非Maven)
- Could not reliably determine the server's fully qualified domain name
- C#鼠标键盘钩子
- CentOS yum安装配置lnmp服务器(Nginx+PHP+MySQL)
- openwrt下关于snmpd的一些信息
- DryIoc mvc 项目集成
- 使用纯css3实现图片轮播
- Hidden Word
- Redis之持久化(RDB AOF)
- 【.NET Core项目实战-统一认证平台】第二章网关篇-定制Ocelot来满足需求
- 逆袭之旅DAY28.XIA.异常处理
- Python+OpenCV实现FasterRcnn样本查看器
- V-rep学习笔记:机器人模型创建2—添加关节
热门文章
- EXECUTE 后的事务计数指示缺少了 COMMIT 或 ROLLBACK TRANSACTION 语句。上一计数 = 1,当前计数 = 2
- 解决 ORA-27102: out of memory
- JobScheduler调度器过程(JobSchedulerService的启动过程)
- ElasticSearch入门2: 基本用法
- 打印页面时a标签不显示URL的方法
- springboot+zuul(一)------实现自定义过滤器、动态路由、动态负载。
- Python模块: 文件和目录os+shutil
- mongodb操作技巧
- SpringMVC之使用 POJO 对象绑定请求参数值
- Netty 出站缓冲区 ChannelOutboundBuffer 源码解析(isWritable 属性的重要性)