Mailinglisten-Archive |
Dennis Duggen wrote: > > > Bringt Dich natsort() weiter? Ist wirklich eine Frage, ich hab's > > bislang noch nicht ausprobiert. ;-) > > natsort() bringt mich nicht wirklich weiter! Sortiert ja nur alphanumerische > Zeichen natürlich! Ahh ja. Und was willst Du sortieren? *staun* Nun denn, ich hab's nun ausprobiert, und Egons Vorschlag bringt einen wirklich weiter. Dennoch verhalten sich die Funktionen IMHO etwas verwirrend (kann daran gelegen haben, dass ich die sort- Geschichten vorher wirklich noch nie benutzt habe). <?php $ar = array( "Zoo.jpg", "haus.jpg", "haus2.jpg", "igel.jpg", "bla.jpg", "stein.jpg", "Hallo.jpg" ); print "unsortiert:<p>"; for ($i = 0 ; $i < count($ar) ; $i++) { print $ar[$i] . "<br>"; } natcasesort($ar); // print_r($ar); print "<p>sortiert:<p>"; reset($ar); while (list($dummy,$el) = each($ar)) { print $el . "<br>"; } ?> Heisst: Waehrend man das Array in der ersten Schleife normal durchlaufen kann, wuerde die gleiche for-Schleife nach dem natcasesort() zum gleichen Ergebnis fuehren wie unsortiert. Denn es werden nicht die Elemente anhand der Indizes sortiert, sondern es wird nur die Reihenfolge der Elemente im Array geaendert, was dazu fuehrt, dass die "alten" Indizes den Elementen zugeordet bleiben und man die sortierte Ausgabe nur mit der zweiten (while) Schleife erhaelt. Interessant... Haette ich anders erwartet, aber na gut. ;-) Beste Gruesse, Ralf
php::bar PHP Wiki - Listenarchive