首頁  >  文章  >  後端開發  >  如何使用 PHP 中的 opendir() 函數以字母順序對目錄清單進行排序?

如何使用 PHP 中的 opendir() 函數以字母順序對目錄清單進行排序?

Linda Hamilton
Linda Hamilton原創
2024-10-31 11:51:30654瀏覽

How can I sort directory listings alphabetically using the opendir() function in PHP?

在PHP 中使用opendir() 依字母順序對目錄列表進行排序

可以使用PHP 的opendir() 函數來實作字母順序對目錄列表進行排序。這是所提供程式碼的修改版本:

<code class="php"><?php

// Open the images folder
$dirFiles = array();
if ($handle = opendir('Images')) {
    while (false !== ($file = readdir($handle))) {

        // Strip file extensions and remove unnecessary characters
        $crap = array(".jpg", ".jpeg", ".JPG", ".JPEG", ".png", ".PNG", ".gif", ".GIF", ".bmp", ".BMP", "_", "-");
        $newstring = str_replace($crap, " ", $file);

        // Hide folders and add files to an array
        if ($file != "." && $file != ".." && $file != "index.php" && $file != "Thumbnails") {
            $dirFiles[] = $file;
        }
    }
    closedir($handle);
}

// Sort the file array alphabetically
sort($dirFiles);

// Display the sorted list of images and thumbnails
foreach ($dirFiles as $file) {
    echo "<li><a href=\"Images/$file\" class=\"thickbox\" rel=\"gallery\" title=\"$newstring\"><img src=\"Images/Thumbnails/$file\" alt=\"$newstring\" width=\"300\" ></a></li>\n";
}

?></code>

說明:

  1. 我們先開啟「Images」目錄並使用下列指令讀取檔名opendir()。
  2. 透過刪除檔案副檔名和不必要的字元來清理每個檔案名稱。
  3. 我們建立一個名為 $dirFiles 的陣列來儲存檔案名稱。
  4. 之後將所有檔案讀取到陣列中,我們呼叫 sort($dirFiles) 將陣列依字母順序排序。
  5. 最後,我們迭代排序後的陣列並顯示具有正確檔案名稱和路徑的圖像和縮圖。

以上是如何使用 PHP 中的 opendir() 函數以字母順序對目錄清單進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn