This is due to your shuffle. You are randomizing your array. Let me introduce you to: http://php.net/manual/en/function.array-reverse.php which is
<?php
$dirname = "images";
$images = scandir($dirname);
$images = arsort(array_reverse($images, true));
$ignore = Array(".", "..");
foreach($images as $curimg){
if(!in_array($curimg, $ignore)) {
echo "<img src=\"". $dirname . '/' . $curimg ."\">" ;
}
}
?>
Update:
$dirname = "Images";
$images = scandir($dirname);
sort($images,SORT_NUMERIC);
krsort($images);
$ignore = Array(".", "..");
foreach($images as $curimg){
if(!in_array($curimg, $ignore)) {
echo "<img src=\"". $dirname . '/' . $curimg ."\">
" ;
}
}
What I have been working with:
Without the sort();
and krsort();
i return:
<img src="Images/1.png">
<img src="Images/10.png">
<img src="Images/11.png">
<img src="Images/2.png">
<img src="Images/3.png">
<img src="Images/4.png">
<img src="Images/5.png">
<img src="Images/6.png">
<img src="Images/7.png">
<img src="Images/8.png">
<img src="Images/9.png">
With the krsort and sort.. I return:
<img src="Images/11.png">
<img src="Images/10.png">
<img src="Images/9.png">
<img src="Images/8.png">
<img src="Images/7.png">
<img src="Images/6.png">
<img src="Images/5.png">
<img src="Images/4.png">
<img src="Images/3.png">
<img src="Images/2.png">
<img src="Images/1.png">
Which I presume is what you are looking for.