Avatar billede qxqorgan Nybegynder
10. februar 2004 - 09:59 Der er 1 kommentar og
1 løsning

Sortering af multidimentionalt array

Hej Xperter
Jeg har et PHP4 spørgsmål:
Jeg ønsker nedenstående array sorteret, først efter bog, derefter efter kapitel. Jeg ønsker at bevare associationen mellem nøgle og værdi.

input:

$arr[0] = array("bog" => 12, "kap" => 2);
$arr[1] = array("bog" => 10, "kap" => 1);
$arr[2] = array("bog" => 12, "kap" => 1);
$arr[3] = array("bog" => 10, "kap" => 3);
$arr[4] = array("bog" => 10, "kap" => 2);
$arr[5] = array("bog" => 11, "kap" => 1);
$arr[6] = array("bog" => 11, "kap" => 2);

ønsket output:

Array
(
[1] => Array(["bog"] => 10 ["kap"] => 1)
[4] => Array(["bog"] => 10 ["kap"] => 2)
[3] => Array(["bog"] => 10 ["kap"] => 3)
[5] => Array(["bog"] => 11 ["kap"] => 1)
[6] => Array(["bog"] => 11 ["kap"] => 2)
[2] => Array(["bog"] => 12 ["kap"] => 1)
[0] => Array(["bog"] => 12 ["kap"] => 2)
)

Jeg håber at der er nogen som har tid, lyst og lejlighed til at svare.
Avatar billede codebase Praktikant
10. februar 2004 - 10:39 #1
foreach ($arr as $key => $row) {
  $bog[$key] = $row["bog"];
  $kap[$key] = $row["kap"];
}
array_multisort($bog, SORT_ASC, $kap, SORT_ASC, $arr);

direkte fra:
http://dk2.php.net/manual/en/function.array-multisort.php
Avatar billede qxqorgan Nybegynder
10. februar 2004 - 11:03 #2
Hej codebase
Det virker! Jeg takker og bukker...
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