0

このスクリプトからの出力を並べ替えたいと思います。

いくつかの除外を含む完全なディレクトリからの出力を示しています。

<?php
if ($handle = opendir('.')) {
    $blacklist = array('.', '..', '.svn', 'pagina.php','index.php','index.html');

echo "<h1>Statistics for:</h1>";
echo "<TABLE align=left border=1 cellpadding=5 cellspacing=0 class=whitelinks>";

 while (false !== ($file = readdir($handle))) {
        if (!in_array($file, $blacklist)) {

                echo "<TR><TD><a href='./$file'>$file\n</a></TD></TR>";
        }
    }
    closedir($handle);

echo"</TABLE>";
}
?>

私がやりたいことは、アルファベットのディレクトリからの出力をソートすることです。A --> B --> C ...

どうすればこれを修正できますか。私はソートで何かを試しました。しかし、私はそれを機能させることができます

4

1 に答える 1

0

最初に配列に入れ$file、配列で使用sortしてからhtmlを出力します

$files = array();
while (false !== ($file = readdir($handle))) {
   if (!in_array($file, $blacklist)) {
      $files[] = $file;
   }
}

sort($files,SORT_NATURAL); //use natsort if php is below 5.4

foreach($files as $file) {
   echo "<TR><TD><a href='./$file'>$file\n</a></TD></TR>";
}
于 2013-09-20T13:32:55.120 に答える