Heim >Backend-Entwicklung >PHP-Tutorial >Wie sortiere ich eine Verzeichnisliste alphabetisch mit opendir() in PHP?

Wie sortiere ich eine Verzeichnisliste alphabetisch mit opendir() in PHP?

Barbara Streisand
Barbara StreisandOriginal
2024-10-29 05:16:02756Durchsuche

How to Sort a Directory List Alphabetically Using opendir() in PHP?

Verzeichnisliste alphabetisch mit opendir() sortieren

Eine häufige Aufgabe in der Webentwicklung besteht darin, eine sortierte Liste von Dateien oder Verzeichnissen aus einem anzuzeigen angegebenen Verzeichnis. Dies kann mit der Funktion opendir() erreicht werden. Einige Benutzer können jedoch Schwierigkeiten haben, die Dateien alphabetisch zu sortieren.

Um eine Verzeichnisliste alphabetisch zu sortieren, ist es notwendig, die Dateien vor dem Sortieren in ein Array einzulesen. Der folgende Code demonstriert diesen Ansatz:

<code class="php"><?php
$dirFiles = array();

// Open the directory
if ($handle = opendir('Images')) {
    // Read each file
    while (false !== ($file = readdir($handle))) {
        // Strip file extensions
        $crap = array(".jpg", ".jpeg", ".JPG", ".JPEG", ".png", ".PNG", ".gif", ".GIF", ".bmp", ".BMP");
        $newstring = str_replace($crap, " ", $file);

        // Ignore folders, index.php, and Thumbnails
        if ($file != "." && $file != ".." && $file != "index.php" && $file != "Thumbnails") {
            // Add the file to the array
            $dirFiles[] = $file;
        }
    }
    // Close the directory
    closedir($handle);
}

// Sort the files alphabetically
sort($dirFiles);

// Display the sorted list of files
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>

In diesem Code werden die Dateien vor dem Sortieren in das Array $dirFiles eingelesen. Mit der Funktion sort() wird das Array alphabetisch sortiert. Die sortierte Liste der Dateien wird dann mithilfe einer Schleife angezeigt.

Darüber hinaus können Sie die Funktion pathinfo() verwenden, um Dateierweiterungen allgemeiner zu behandeln, sodass kein fest codiertes Array von Erweiterungen erforderlich ist.

Das obige ist der detaillierte Inhalt vonWie sortiere ich eine Verzeichnisliste alphabetisch mit opendir() in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn