2014-04-17 28 views
0

我在php中是一個初學者。我寫了一個腳本來列出文件夾並在其中顯示文件。然而,我不知道如何按字母排序。有沒有人有解決這個問題的建議? (我希望我沒有改變很多代碼,因爲我已經使用這個代碼中的許多地方....)使用PHP對文件夾進行排序

$path ="Prosedyrer"; 
if ($handle = opendir($path)) 
{ 
    $blacklist = array('.', '..', 'somedir', 'somefile.php'); 
    while (false !== ($file = readdir($handle))) 
    { 
     if (!in_array($file, $blacklist)) 
     { 
      echo "<li>$file</a>\n <ul class=\"sub\">"; 
     } 
    } 
} 

回答

0

這是從PHP文件:

陣列SCANDIR(串$ directory [,int $ sorting_order = SCANDIR_SORT_ASCENDING [,resource $ context]])

sorting_order 默認情況下,按照字母順序排序。如果可選sorting_order設置爲SCANDIR_SORT_DESCENDING,那麼排序順序按字母順序降序排列。如果它設置爲SCANDIR_SORT_NONE,那麼結果是未排序的。

0

使用​​3210,它更方便,並立即爲您提供陣列。

$files = glob('SomePath/*'); 
$blacklist = array('.', '..', 'somedir', 'index.php'); 
$files = array_diff($files, $blacklist); // get rid of the blacklisted files 
sort($files); // sort them a-z! 
foreach ($files as $file) echo "<li>$file</a>\n <ul class=\"sub\">"; 
相關問題