php系统日志切割的实例
发布:smiling 来源: PHP粉丝网 添加日期:2018-09-17 09:26:08 浏览: 评论:0
我习惯设置的日志路径是这样
/home/www/logs/域名.log
比如:
/home/www/logs/www.phpfensi.com.log
为了方便管理,日志需要按天保存在一个文件中,并且保留指定天数的日志,超过时间的就删除。
分享一下脚本:
- #!/usr/bin/php
- $logdir = '/home/www/logs/';
- // 保留天数含当天
- $log_save_day = 7;
- $files = glob("{$logdir}/*");
- foreach($files as $path){
- $filename = basename($path);
- preg_match("/(\d{8})\.log/", $filename, $preg);
- $date = @$preg[1];
- if(emptyempty($date)){
- // 当天日志,更改文件名
- $newpath = $logdir . '/' . str_replace('log', date('Ymd',strtotime("-1 day")).'.log', $filename);
- rename($path, $newpath);
- echo "$path >>> $newpath\n";
- }else{
- // 超过保留天数,删除
- if(time()+10 - strtotime($date) > 3600*24*$log_save_day){
- unlink($path);
- echo "$path delete!\n";
- } //phpfensi.com
- }
- }
- shell_exec('/etc/init.d/nginx reload &> /dev/null');
Tags: 实例 系统 日志
相关文章
- ·用实例分析PHP5异常处理(2013-11-13)
- ·两款php导出excel实例(2013-12-16)
- ·php 实现jquery+ajax 跨域数据调用实例(2014-01-03)
- ·PHP JSON数据处理实例程序用法(2014-01-06)
- ·php中cookie实现二级域名可访问操作实例(2014-01-07)
- ·PHP curl 获取响应的状态实例(2014-01-08)
- ·PHP Curl多线程实现原理与实例详解(2014-01-09)
- ·php 通过curl post发送json数据实例(2014-01-10)
- ·php中设计模式工厂模式和单例模式实例(2014-01-16)
- ·PHP多进程编程实例说明(2014-01-17)
- ·PHP socket模拟POST请求实例(2014-01-18)
- ·phpmailer 发送邮件实例代码(2014-01-21)
- ·在apache 下建立高可扩展的web邮件系统实例(2014-01-21)
- ·php fsockopen邮箱发送实例代码(2014-01-22)
- ·PHPMailer邮件发送实例与问题总结(2014-01-25)
- ·php 中javascript调用js实例方法(2014-05-30)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)