thinkphp6 日志自动清理的问题,应该是框架bug吧?

  • 问题描述
    日志文件删除时,未对文件排序,导致删除错误。
    我理解的应该是删除绿色框中的文件,实际删除了蓝色框中间的文件。

  • 文档
    查看官方文档地址

  • 底层实现

    if ($this->config['max_files']) {
      // glob 这个方法有第二个参数,可选值有一个是不排序 GLOB_NOSORT 
      // 我找了下没找到排序的参数 
      $files = glob($this->config['path'] . '*.log');
    
      try {
          if (count($files) > $this->config['max_files']) {
              unlink($files[0]);
          }
      } catch (\Exception $e) {
          //
      }
    }
  • 问题反馈
    这个问题我反馈给官方了,一个月了没人响应。
    github issues

想请教一下各位,这里是框架的bug吗?有啥比较简单的方法直接修复的吗?

php
感谢阅读,有收获的话不妨点个赞:smiling_imp:
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 2

按修改日期排序好像没问题,但5月31号的日志在6月1号被修改,如果不是你移动了日志文件导就是框架的问题。

2年前 评论
declandragon (楼主) 2年前

这种事情就不要让框架来做啦~

2年前 评论
declandragon (楼主) 2年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!