如何显示按日期排序的文件夹和子文件夹中的所有图像和视频(顶部较新)



使用PHP,我尝试显示文件夹和子文件夹中的所有图像,按日期排序(顶部较新(。

@slashingweapon的剧本工作得很好。但我只是无法让它显示按日期排序的图像。

正在尝试"filemtime",但无法使其工作(我不是程序员,只是一个 DIY 人(。

如果有人能给出一些建议,我会很高兴。

谢谢!

<?php
$rdi = new RecursiveDirectoryIterator("uploads/prevImgs/");
$it = new RecursiveIteratorIterator($rdi);
foreach($it as $oneThing)
    if (is_file($oneThing))
        echo '<img src="'.$oneThing.'" /><br />';
?>

要按修改时间对值进行排序,您需要将它们读入数组,然后在显示它们之前对其进行排序。为了处理可能具有相同mtime的文件,我们使用一个多维数组,然后使用 array_multisort 使用 mtime 列对其进行排序。我们将所需的输出添加到数组中,以便您可以直接 ehco 这些值以便于输出:

$rdi = new RecursiveDirectoryIterator("uploads/prevImgs/");
$it = new RecursiveIteratorIterator($rdi);
$files = array();
foreach($it as $oneThing) {
    if (is_file($oneThing)) {
        $files[] = array('mtime' => filemtime($oneThing), 'image' => '<img src="'.$oneThing.'" /><br />');
    }
}
array_multisort(array_column($files, 'mtime'), $files);
echo implode(array_column($files, 'image'));

最新更新