Verzeichnisse sortiert listen

radarin

Angesehenes Mitglied
Hallo Liste

Ich will auf meiner Webseite Verzeichnisse auflisten. Das funktioniert soweit auch auf diese Weise:

CODE
<?php
$verz=opendir ($pfadliste);
while ($dir=readdir($verz))
{
if(filetype($pfadliste.$dir)=="dir")
{
if($dir != '.' && $dir != '..' && $dir != 'img')
{
echo "<a href=\"".$url."\">".$dir."</a><br>";
}
}
}
closedir($verz);
// (gekürzter Code)
?>



Die entsprechenden Verzeichnisse werden Zeilenweise aufgelistet. Im Regelfall werden Sie Alphabetisch ausgegeben. Mir ist aber auch schon aufgefallen, das bei einem neuen Verzeichnis dieses eine Zeit lang als Letztes gelistet wird. Ich möchte aber die Ausgabe individuell sortieren können. Es ist schon der Wunsch geäussert worden, die jeweils Neusten an erster Stelle zu listen. Meinetwegen müssen da keine Infos vom Server betreffend erstellungsdaten ausgelesen werden. Ich dachte mir, ich unterteile den Verzeichnisnamen in einen Sortierschlüssel und den Namen, getrennt durch einen Punkt:

997. Besichtigungen
998. Ausfluege
999. Zentrales

Wie kann ich die Ausgabe nun anweisen, nach den Nummern aufsteigend zu sortieren..?

Gruss René
 
Nachtrag 22.1.07: Ist es wirklich nicht möglich die Sortierung des 'readdir()' zu beeinflussen?
 
CODE <?PHP
$dir = 'neu';
$files1 = scandir($dir);
$files2 = scandir($dir, 1);

print_r($files1);
print_r($files2);
?>


Bei $dir setze ich den selben Inhalt ein wie ich ihn für opendir() verwende, hier erhalte ich aber den Fehler Call to undefined function: scandir()
 
QUOTE (radarin @ Do 25.1.2007, 21:48)hier erhalte ich aber den Fehler Call to undefined function: scandir()

Da wird doch genau gesagt, wo das Problem liegt: Die Funktion ist nicht definiert - also das Problem beheben.
 
cool.gif


Wenn ich den Code aus dem Manual übernehme und dann so eine Meldung bekomme, wundere ich mich schon und weiss im ersten Moment auch nicht was ich da beheben soll.

Auf die PHP Version hab ich gar nicht geachtet. Aber daran liegt es. Mein Provider hat eine 4er Version am laufen.

Ich bin aber einer Lösung auf der Spur. Teste noch einige Varianten. Danke euch jedenfalls für Eure Tips.
 
Zurück
Oben