Codeigniter中的Logs文件夹变得越来越重

时间:2015-03-17 07:55:26

标签: php codeigniter

我在codeigniter中启用了错误记录,我的日志文件夹路径为application/logs/ 在此文件夹中,文件正在自动从codeigniter创建为log-2015-03-17.phplog-2015-03-16.php等。

我希望自动删除超过两天的文件,所以在codeigniter中是否有任何方法可以执行此操作,或者我必须为此创建cron

提前致谢。

2 个答案:

答案 0 :(得分:2)

建议您使用此功能删除日志文件

我在这里删除所有 10 天前的文件

public function delteteLogFiles_get() {
    $path    = '../api/application/logs/';
    $files = opendir($path);
    while (($file = readdir($files)) !== false) {
        if(in_array($file, array('.', '..'))) continue;
        if (filectime($path.$file) <= time() - 14 * 24 * 60 * 60) {
            // echo '<pre>'; print_r($path.$file. "<br> file created ".filectime($path.$file)); echo '</pre>';
            unlink($path . $file);
        }
    }
    closedir($files); 
}

如果您想清除日志文件夹中的所有文件,请删除此条件

<块引用>

if (filectime($path.$file) <= time() - 14 * 24 * 60 * 60) {

答案 1 :(得分:0)

据我所知,这不应该由php / codeigniter处理,但它是服务器管理的问题。如何,取决于您正在使用的服务器:例如,在Linux上,您可以使用“ logrotate ”(https://serverfault.com/questions/391538/logrotate-daily-and-size),在Windows上您可以从此处获取信息({{3 }})。