Avatar billede mixhael Nybegynder
24. november 2004 - 14:13 Der er 2 kommentarer og
1 løsning

Sortering af dobbeltarray.

Hej, jeg vil gerne sortere dette array efter eksempelvis dato:

Array
(
    [0] => Array
        (
            [file] => 2
            [date] => 2001.03.12
        )

    [1] => Array
        (
            [file] => 1
            [date] => 2004.05.11
        )

    [2] => Array
        (
            [file] => 3
            [date] => 2003.01.22
        )

)

Med andre ord hvilken algoritme skal jeg bruge for at få det ovenstående array til at blive sorteret efter dato og derefter se sådanne ud:

Array
(
    [0] => Array
        (
            [file] => 2
            [date] => 2001.03.12
        )

    [1] => Array
        (
            [file] => 3
            [date] => 2003.01.22
        )

    [2] => Array
        (
            [file] => 1
            [date] => 2004.05.11
        )

)


Kan man eksempelvis lave noget sjovt med usort eller lign??

Med Venlig Hilsen
Michael
Avatar billede schaefner Juniormester
24. november 2004 - 14:34 #1
Stort set direkte sakset fra http://php.net/usort

<?php
function cmp($a, $b){
    return strcmp($a["date"], $b["date"]);
}

$files[0]['file'] = "2";
$files[0]['date'] = "2001.03.12";
$files[1]['file'] = "1";
$files[1]['date'] = "2004.05.11";
$files[2]['file'] = "3";
$files[2]['date'] = "2003.01.22";

usort($files, "cmp");

print "<pre>";
while (list($key, $value) = each($files)) {
    echo "\$files[$key]['file']: " . $value['file'] . "\n";
    echo "\$files[$key]['date']: " . $value['date'] . "\n\n";
}
print "</pre>";
?>
Avatar billede mixhael Nybegynder
24. november 2004 - 15:02 #2
Jeg vil nu hellere bruge:

function cmp($a, $b) {
    return ($a["getsort"] > $b["getsort"]);
}

Tak for din tid.
Avatar billede mixhael Nybegynder
27. november 2004 - 16:06 #3
den var lidt for nem hva..
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
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

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