在我的文件夹缓存中,我有几十个名称为 的文件filename-number.json,例如
sifriugh-80.json
dlifjbhvzique-76.json
dfhgzeiuy-12.json
...
我有一个简单的脚本,每 2 小时清理一次缓存目录,删除超过 2 小时的文件:
$fileSystemIterator = new FilesystemIterator('cache');
$now = time();
foreach ($fileSystemIterator as $file) {
if ($now - $file->getCTime() >= 3 * 3600) // 2 hours
unlink('cache/' . $file->getFilename());
}
现在,我只希望每 2 小时删除一次编号(在.json文件开头存在编号之前但不是编号)不以 结尾的文件-100.json,并且-100.json仅每 7 天删除一次以 结尾的文件。
我知道我可以用它preg_match()来获取名称,但是有没有有效的方法来执行它?