Как отсортировать файлы по дате в php?

Пользователь

от shayna.buckridge , в категории: PHP , 2 года назад

Как отсортировать файлы по дате в php?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от jamey.kohler , 2 года назад

@shayna.buckridge 

Для сортировки файлов по дате в PHP можно использовать функцию scandir для получения списка файлов в директории, а затем сортировать этот список используя функцию usort для сравнения дат изменения файлов.


Вот пример кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
$dir = '/path/to/directory';

// Получаем список файлов и сортируем их по дате изменения
$file_list = scandir($dir);
usort($file_list, function($a, $b) use ($dir) {
    $a_time = filemtime("$dir/$a");
    $b_time = filemtime("$dir/$b");
    return $b_time - $a_time; // Сортировка в обратном порядке (от новых к старым)
});

// Выводим отсортированный список файлов
foreach ($file_list as $filename) {
    if (is_file("$dir/$filename")) {
        echo "$filename
";
    }
}


Здесь мы сначала получаем список файлов в директории с помощью функции scandir. Затем используем функцию usort, которая принимает список файлов и функцию-сравнитель. В нашей функции-сравнителе мы сравниваем даты изменения файлов, используя функцию filemtime. Файлы с более новыми датами изменения будут располагаться перед файлами с более старыми датами изменения. Наконец, мы выводим список файлов в отсортированном порядке.