Avatar billede ye10 Nybegynder
18. marts 2005 - 22:37 Der er 5 kommentarer og
1 løsning

Sortering af et array

Jeg har et array der hedder


Array
(
    [0] => Array
        (
            [navn] => Hans
            [alder] => 20
            [postnummer] => 1000
        )

    [1] => Array
        (
            [navn] => Jens
            [alder] => 60
            [postnummer] => 5000
        )

    [2] => Array
        (
            [navn] => Ole
            [alder] => 40
            [postnummer] => 3000
        )

)

Hvordan kan jeg få sorteret mit array efter alder?
Så arrayet kommer til at have Jens først, så ole og så hans.

Kan ikke få multi_sort til at virke
Avatar billede erikjacobsen Ekspert
18. marts 2005 - 22:41 #1
Avatar billede barklund Nybegynder
18. marts 2005 - 22:46 #2
Noget med en function som:

function comp_ints($a,$b) {
    return $a - $b;
}
usort($array, 'comp_ints');

--
Morten Barklund
Avatar billede olebole Juniormester
18. marts 2005 - 23:20 #3
<ole>

Mjaa ... vi skal vel ind og have fat i alderen:

function mySort($a, $b) {
    return ($a["alder"]==$b["alder"])? 0 : $a["alder"]>$b["alder"];
}
usort($myArray, "mySort");

- hvor $myArray er array'et, der skal sorteres

/mvh
</bole>
Avatar billede olebole Juniormester
18. marts 2005 - 23:22 #4
ehhhh .... hvilket vel helt og aldeles er, hvad Erik også pegede på - nu da jeg har fået checket hans link  ;o)
Avatar billede barklund Nybegynder
19. marts 2005 - 15:30 #5
Ja, jeg mente også:

function comp_ints($a,$b) {
    return $a['alder'] - $b['alder'];
}
usort($array, 'comp_ints');

Selvfølgelig ;)

--
Morten Barklund
Avatar billede ye10 Nybegynder
08. april 2005 - 15:49 #6
lukker (ingen svar)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester