Я записал этот сценарий PHP для удаления старых файлов, более старых, чем 24 часа, но он удалил все файлы включая более новые:
<?php
$path = 'ftmp/';
if ($handle = opendir($path)) {
while (false !== ($file = readdir($handle))) {
if ((time()-filectime($path.$file)) < 86400) {
if (preg_match('/\.pdf$/i', $file)) {
unlink($path.$file);
}
}
}
}
?>
(time()-filectime($path.$file)) < 86400
Если текущее время и время изменения файла составляют в пределах 86400 секунд друг от друга, то ...
if (preg_match('/\.pdf$/i', $file)) {
unlink($path.$file);
}
Я думаю, это может быть вашей проблемой. Измените его на> или> =, и он должен работать правильно.
>
. filemtime ()
.