Как получить первый измененный файл в папке с помощью PHP?
Как получить первый измененный файл?
До сих пор у меня было:
$dir = $path.'/';
$firstMod = '';
$p = 1;
foreach (scandir($dir) as $file) {
if (is_file($dir.$file) && ... ) {
if($p == 1) break;
}
}
Если я хочу получить последний файл, но не последний измененный, но последний в порядке папок, что я должен использовать?
1 ответ
Решение
Вы можете попытаться записать все файлы в ключ make массива в качестве измененной даты, а затем переупорядочить массив на основе даты и получить первый элемент массива, который сначала будет изменен.
<?php
$folder = "files/";
$handle = opendir($folder);
$files=array();
while ($file = readdir($handle)){
if( $file != ".." && $file != "." ){
$key = filemtime($file);
$files[$key] = $file ;
}
}
closedir($handle);
ksort($files) ;
echo reset($files);
?>