PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Sortieren bei readdir()


Absinthguru
07.03.2003, 11:24:41
Hallo!

Wie kann ich bei dem folgendem Code, die Ausgabe alphabetisch sortieren?

Gruß Absinthguru

<?
$dir_main = "rezepte/$kat";
$dir = @opendir("$dir_main");
while (($file = readdir($dir)) !== false) {
if($file != "." && $file != "..") {
$file = ereg_replace(".php","",$file);
print("<a href="index.php?page=$dir_main/$file">$file</a><br>");
}
}
closedir($dir);
?>

Ben20
07.03.2003, 11:39:16
Du kannst das nur sortiern, indem Du die Dateinamen vor der Ausgabe in einen Array einließt, diesen sortierst und ihn anschließend ausgibst!

Absinthguru
07.03.2003, 15:42:43
Habe es jetzt so gemacht!
Nen array und dann sortiert!
Leider sortiert er es nicht!

Gruß Absinthguru


<?
$dir_main = "rezepte/$kat";
$dir = @opendir("$dir_main");
while (($file = readdir($dir)) !== false) {
if($file != "." && $file != "..") {
$file = ereg_replace(".php","",$file);
$rezepte = array("$file");
asort($rezepte);
print("<a href="index.php?page=$dir_main/$rezepte[0]">$rezepte[0]</a><br>");
}
}
closedir($dir);
?

Ben20
07.03.2003, 15:45:11
Das Thema hatten wir vor kurzem schonmal - da gabs die gleichen Probleme. Leider wurden die auch nicht komplett gelöst. Nichts desto trotz:


http://www.selfphp.com/forum/forum/showthread.php?s=&threadid=3481

Absinthguru
07.03.2003, 16:17:21
Hat mir leider auch nciht wirklich weitergeholfen!

trotzdem Dank!

steffen
09.03.2003, 12:41:17
Für meine Navigation verwende ich folgenden Code und der wird auch sortiert.

$basis = "rezepte/$kat";
$fp=dir($basis);
while($v = $fp->read()){
$arr[] = $v;
}
$fp->close();
sort($arr);

foreach ($arr as $element){
$name=str_replace(".php", "", $element);
echo "<a href='index.php?page=$basis/$element'>$name</a>";
}

Vielleicht hilft es Dir.

Servus sagt der Steffen