如何从文件夹中读取/选择文件名时对A - > Z进行排序

时间:2014-12-08 12:59:32

标签: php

这可能非常明显,但我似乎无法解决它。

我有以下选项菜单:

<select name="Image2" onChange="showImage(this.value)">
    <option value="" selected="selected"></option>
  <?php 
     $dir = "../somefolder";//your path
    $dh  = opendir($dir);
    while (false !== ($filename = readdir($dh))) {
        $files[] = $filename;
  echo "<option value='". $filename . "'>" . $filename . "</option>";  }
    sort($files);
 ?>

</select> 
<div id="image_div"></div> 

<script type="text/javascript">
 function showImage(value)
 {
  var img = "<img src='../somefolder/"+value+"' />";
  document.getElementById('image_div').innerHTML = img;
 }
</script>

哪个工作正常,但所有文件都没有排序 - &gt; z有没有办法做到这一点,我在这个文件夹中有超过100个文件? 任何帮助欢迎

1 个答案:

答案 0 :(得分:4)

你可以做两个循环,一个用于读取文件名,另一个用于输出它们。

由于您有大约100个文件,因此不会更改响应时间......

$dh  = opendir($dir);
while (false !== ($filename = readdir($dh))) {
        $files[] = $filename;
}
sort($files);
foreach ($files as $filename){
     echo "<option value='". $filename . "'>" . $filename . "</option>";
}