PHP readdir() not returning files in alphabetical order
Posted
by Buggabill
on Stack Overflow
See other posts from Stack Overflow
or by Buggabill
Published on 2009-02-12T14:33:30Z
Indexed on
2010/04/02
6:33 UTC
Read the original article
Hit count: 228
php
I am reading through a directory with some pictures and such using a pretty simple implementation of readdir() like the following:
if ($handle = opendir($path)) {
while (false !== ($szFilename = readdir($handle))) {
if ($szFilename[0] !== '.') {
if (is_file($path.$szFilename)) {
// do stuff
}
}
}
}
The problem that I am having is that the files are not being read in alphabetical order as the docs for readdir() state:
Returns the filename of the next file from the directory. The filenames are returned in the order in which they are stored by the filesystem.
Another weird thing is that, on the local testing server, the same code works great. This is running on a server using the LAMP stack in both cases.
I know that I can build an array and just sort it, but I was wondering if I was missing something in what I was doing.
Thanks for any insight!
© Stack Overflow or respective owner