Gå til innhold

Sortere array etter tall baklengs


Anbefalte innlegg

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
Videoannonse
Annonse

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

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...