加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php系统日志切割的例子

发布时间:2023-09-22 10:39:22 所属栏目:PHP教程 来源:
导读:我习惯设置的日志路径是这样

/home/www/logs/域名.log

比如:

/home/www/logs/www.Cuoxin.com.log

为了方便管理,日志需要按天保存在一个文件中,并且保留指定天数的日志,超过时间的就删除。

分享一下
我习惯设置的日志路径是这样

/home/www/logs/域名.log

比如:

/home/www/logs/www.Cuoxin.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"; 
        } //Cuoxin.com 
    } 

shell_exec('/etc/init.d/nginx reload &> /dev/null');
 

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章