我有此代码显示上传的图片:
<?php
$dir = "img/*.jpg";
$images = glob( $dir );
foreach( $images as $image ):
echo "<img src='" . $image . "' />";
endforeach;
?>
但我需要将我上次上传的图片排在第一位。我知道它就在我面前,但我看不到它。我该怎么做?
答案 0 :(得分:2)
在foreach
之前尝试reversing the array。
<?php
$dir = "img/*.jpg";
$images = glob( $dir );
$images = array_reverse($images);
foreach( $images as $image ):
echo "<img src='" . $image . "' />";
endforeach;
?>
答案 1 :(得分:2)
更安全的选择是使用filemtime()
函数来获取每个文件的修改时间并根据它进行排序。看到这段代码:
<?php
$dir = "img/*.jpg";
$images = glob( $dir );
//Add this portion
foreach( $images as $image ) {
$imagesModTimeArray[filemtime($image)] = $image;
}
krsort($imagesModTimeArray);
$images=array_values(imagesModTimeArray);
//New Portion End
foreach( $images as $image ):
echo "<img src='" . $image . "' />";
endforeach;
?>