PHP删除文件的第一行直到达到阈值

我想将我的日志文件缩减为 7KB。但修剪只运行一次,文件大小也不会更新。


这是代码:


$thresholdKB = "7";

$files = glob('logs/*.{log}', GLOB_BRACE);


foreach($files as $file) {

    $filesizeKB = filesize("$file") / 1024;

    if ($filesizeKB > $thresholdKB){

        while ($filesizeKB > $thresholdKB) {

            $filesizeKB = filesize("$file") / 1024;


            $lines = file("$file"); 

            unset($lines[0]); 

            $fp = fopen("$file", 'w'); 

            fwrite($fp, implode('', $lines)); 

            fclose($fp);

        }

    }

}


catspeake
浏览 90回答 1
1回答

海绵宝宝撒

的结果filesize被缓存。clearstatcache()您需要在更新文件后调用。
打开App,查看更多内容
随时随地看视频慕课网APP