I have a page that lists all files inside a directory, and if possible I'd like them to be sorted by alphabetical order. Not quite sure how to do that though. Below is the current code. If anyone has any ideas that's be awesome!
<?php
function getFileList($dir)
{
// array to hold return value
$retval = array();
// add trailing slash if missing
if(substr($dir, -1) != "/") $dir .= "/";
// open pointer to directory and read list of files
$d = @dir($dir) or die("getFileList: Failed opening directory $dir for reading");
while(false !== ($entry = $d->read())) {
// skip hidden files
if($entry[0] == ".") continue;
if(is_dir("$dir$entry")) {
$retval[] = array(
"name" => "$dir$entry/",
"type" => filetype("$dir$entry"),
"size" => 0,
"lastmod" => filemtime("$dir$entry")
);
} elseif(is_readable("$dir$entry")) {
$retval[] = array(
"name" => "$dir$entry",
"type" => mime_content_type("$dir$entry"),
"size" => filesize("$dir$entry"),
"lastmod" => filemtime("$dir$entry")
);
}
}
$d->close();
return $retval;
}
?>
<?php
// list files in the current directory
$dirlist = getFileList(".");
$dirlist = getFileList("./");
?>
<?php
echo "<div id=\"menu\">";
echo "<div class=\"menu1 title\">Name</div><div class=\"menu2 title\">Last Modified</div>
";
foreach($dirlist as $file) {
echo "<div class=\"menu1\"><a href=\"{$file['name']}\" target=\"_blank\">",number_format(++$counter),". ",basename($file['name']),"</div>
";
echo "<div class=\"menu2\">",date('r', $file['lastmod']),"</div>
";
}
echo "<div class=\"clear\"></div>
";
echo "</div>
";
?>