Получить filemtime для последнего обновленного файла в папке
У меня есть папка с 4 файлами в ней, и я хотел бы вытащить время последнего изменения самого последнего (которое может не всегда совпадать). Есть ли хороший способ сделать это?
2 ответа
Решение
Используйте DirectoryIterator, чтобы найти файлы, а затем просто сравните их измененное время. Это должно сделать это:
$iterator = new DirectoryIterator('path/to/dir');
$mtime = -1;
$file;
foreach ($iterator as $fileinfo) {
if ($fileinfo->isFile()) {
if ($fileinfo->getMTime() > $mtime) {
$file = $fileinfo->getFilename();
$mtime = $fileinfo->getMTime();
}
}
}
Нет необходимости перебирать каталог - filemtime
будет работать для большинства серверов (в зависимости от вашей конфигурации):
$LastMod = filemtime("/path/to/dir/.");
Последняя точка необходима для просмотра каталога в виде файла и для получения последней даты его модификации.