gpt4 book ai didi

php - 如何根据php中的创建日期从目录中删除文件?

转载 作者:IT王子 更新时间:2023-10-29 01:15:41 25 4
gpt4 key购买 nike

我有一个存储 html 文件的缓存文件夹。它们会在需要时被覆盖,但很多时候,很少使用的页面也会缓存在那里,最终会占用空间(5 周后,驱动器已满 270 万个缓存文件)。

遍历包含数十万个文件的目录并删除超过 1 天的文件的最佳方法是什么?

最佳答案

我想你可以通过使用 readdir 遍历目录并根据时间戳删除来解决这个问题:

<?php
$path = '/path/to/files/';
if ($handle = opendir($path)) {

while (false !== ($file = readdir($handle))) {
$filelastmodified = filemtime($path . $file);
//24 hours in a day * 3600 seconds per hour
if((time() - $filelastmodified) > 24*3600)
{
unlink($path . $file);
}

}

closedir($handle);
}
?>

if((time() - $filelastmodified) > 24*3600) 将选择早于 24 小时(24 小时乘以每小时 3600 秒)的文件。如果您想要几天,对于超过一周的文件,它应该读取例如 7*24*3600。

另外,请注意 filemtime 返回文件的最后修改时间,而不是创建日期。

关于php - 如何根据php中的创建日期从目录中删除文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2205738/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com