Slettet bruger
25. januar 2004 - 16:01
Der er
13 kommentarer og 1 løsning
Finde navnet på en key i et array
Jeg har et array, hvor der er følgende poster i array'et for hver spiller der har scoret mål: maal[$spillernavn] = 12; Hvordan trækker jeg $spillernavn ud af ovenstående i en foreach-løkke?? foreach ($maal as $value =>$key) { $spillernavn = ??? $antal_maal = $maal[$value]; } Jeg har prøvet med: $spillernavn = key($maal); Oprindelig ville jeg gerne have nogle flere oplysninger med om hver spiller (eks.): $maal[$spillernr][0] = $spillernavn; $maal[$spillernr][1] = $antal_scoringer; $maal[$spillernr][2] = $spillernr; men jeg er ikke klar over hvordan jeg sorterer et multi-dimensionelt array.....
Annonceindlæg fra Lector
25. januar 2004 - 16:09
#1
foreach ($maal as $key => $value) { $antal_maal = $maal[$key ]; }
25. januar 2004 - 16:10
#2
vrøvl: foreach ($maal as $key => $value) { $antal_maal = $value; }
Slettet bruger
25. januar 2004 - 16:11
#3
googolplex...> Det er ikke antal mål jeg har problemer med, men at trække navnet på key'en ud.... Eks: $maal[karsten] = 12; Hvordan får jeg en variabel med værdien "karsten"???
25. januar 2004 - 16:20
#4
foreach ($maal as $key => $val) { $spillernavn = $key; $antal_maal = $val; }
Slettet bruger
25. januar 2004 - 16:22
#5
$antal_maal er korrekt. $spillernavn får tildelt værdierne (0,1,2,3, osv....)
25. januar 2004 - 16:33
#6
Så er det ikke det array som du har vist. Dette eksempel: $spillernavn = "Anders And"; $maal[$spillernavn] = 12; foreach ($maal as $key => $val) { echo "$key - $val<br />"; } giver output: Anders And - 12
Slettet bruger
25. januar 2004 - 16:54
#7
Min kode ser sådan her ud: while ($row_maal = mysql_fetch_assoc($query_maal)) { $antal = $row_maal[antal]; $navn = $row_maal[navn]; $maal[$navn] = ($maal[$navn] + $antal); } rsort ($maal); $i_liste = 1; foreach ($maal as $value => $key) { $antal_maal = $maal[$value]; $spillernavn = $key; $tabel_maal_indhold = ($tabel_maal_indhold." <tr> <td width=\"30\" valign=\"top\" align=\"center\">$i_liste.</td> <td width=\"200\" valign=\"top\">$spillernavn</td> <td width=\"70\" valign=\"top\" align=\"center\">$antal_maal</td> </tr> "); $i_liste ++; }
Slettet bruger
25. januar 2004 - 16:56
#8
echo'er jeg $navn i while-løkken, får jeg den rigtige værdi..... Jeg har prøvet at lave foreach-løkken som i dit eksempel... den giver samme resultat.
Slettet bruger
25. januar 2004 - 17:00
#9
Hmmm.... det er tilsyneladende rsort der ødelægger det hele....
Slettet bruger
25. januar 2004 - 17:01
#10
Hmmm... det skal selvfølgelig være arsort i stedet.....
Slettet bruger
25. januar 2004 - 17:03
#11
Fik trods alt hjælp til at få løst mit problem. Læg et svar og pointene er dine...
25. januar 2004 - 17:04
#12
Jeps, arsort er svaret på den sortering, så du bibeholder dine key's.
Slettet bruger
26. januar 2004 - 10:19
#13
detox....> *Doooooh* Kom til at trykke forkert, læg lige et nyt svar *g*
26. januar 2004 - 14:08
#14
;o)
Vi tilbyder markedets bedste kurser inden for webudvikling