Gilbert Skrevet 24. november 2004 Del Skrevet 24. november 2004 PHP.net ga ikke noe svar jeg forsto, derfor spør jeg her: I min msppe grafikk/skins ligger det filer 1.gif, 2.gif osv. Jeg bruker snutten nedenfor til å gå gjennom mappen og vise alle bildene. Men jeg vil gjerne sortere de slik at bildet med høyest tallverdi i navnet kommer først, og 1.gif kommer sist. Har sett litt på rsort og arsort, men ble dessverre ikke klokere (jeg forstår ikke koden godt nok til at jeg kun trenger å vite hvilken funksjon som skal brukes, trenger også et hint om hvor den skal inn). <? $the_array = Array(); $handle = opendir('grafikk/skins'); while (false !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { $the_array[] = $file; } } closedir($handle); arsort ($the_array); reset ($the_array); while (list ($key, $val) = each ($the_array)) { echo "<img src=\"grafikk/skins/$val\" alt=\"\" border=\"0\" width=\"60%\">\n"; } ?> Lenke til kommentar
LoS Skrevet 24. november 2004 Del Skrevet 24. november 2004 Fant denne koden her på scandir funksjonen på php.net, scandir er php5, og der lå det litt hjelp hvis du ville ha samme funksjon i php4 <?php $dir = "/tmp"; $dh = opendir($dir); while (false !== ($filename = readdir($dh))) { $files[] = $filename; } sort($files); print_r($files); rsort($files); print_r($files); ?> Som da får det til å se ut som at det er rsort() du skal bruke. Lenke til kommentar
El Nino Skrevet 24. november 2004 Del Skrevet 24. november 2004 Bruk: natsort($the_array); $the_array= array_reverse($the_array); i steden for rsort() og arsort(). Da får du den fint listen opp slik: 12.gif 10.gif 6.gif 3.gif 1.gif isteden for: 6.gif 3.gif 2.gif 12.gif 10.gif 1.gif Lenke til kommentar
Gilbert Skrevet 24. november 2004 Forfatter Del Skrevet 24. november 2004 100% klaff Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå