根据上载日期列出目录中的图像

时间:2016-10-07 03:47:36

标签: php glob

我有一段代码可以打印目录中的图像。

<?
$directory = 'assets/images/';
$files = glob($directory."*.{jpg}", GLOB_BRACE);
$filecount = count($files);

for($i=1; $i<=$filecount; $i++) {
    echo '<img src="'.$file.'" class="img-responsive">';
}
?>

它完美运作。

除了我想根据上传日期显示我的图像。

有可能吗?

感谢。

2 个答案:

答案 0 :(得分:0)

试试这个:

function listdir_by_date($path){
    $dir = opendir($path);
    $list = array();
    while($file = readdir($dir)){
        if ($file != '.' and $file != '..'){
            // add the filename, to be sure not to
            // overwrite a array key
            $ctime = filectime($data_path . $file) . ',' . $file;
            $list[$ctime] = $file;
        }
    }
    closedir($dir);
    krsort($list);
    return $list;
}

Reference

答案 1 :(得分:0)

好的,请使用您的glob方法:

$directory = 'assets/images/';

$images = [];
$files = glob($directory . '*.{jpg}', GLOB_BRACE);
foreach($files as $file) {
    $images[] = [filectime($file), $file];
}

array_multisort($images, SORT_DESC);

foreach ($images as $image) {
    echo '<img src="' . $image[1] . '" class="img-responsive"><br>';
}

与@ mayank-pandey所呈现的方法略有不同,但基本结果相同。