Raden "foreach ($totaler as $key => $val)" går igenom en array och gör något för varje element i arrayen. Funktionen "foreach" betyder att den gör det för varje element i en array, $totaler anger vilken array, och $key => $val är namnet på nyckeln och värdet på den plats i arrayen som just då gås igenom. Ett exempel som kanske gör det lite klarare:
$test = array();
//Tre värden sätts in i arrayen, det som står inom [] är nyckeln, och behöver inte vara en siffra
$test["Hans"] = 5;
$test[2] = 19;
$test[3] = "Olof";
/*Alla värden gås igenom och koden inom klamrar körs för varje element. $random och $sweclockers
anger bara i vilka variabler vi vill lagra nyckeln och värdet vid varje varv, så att vi kan komma åt dem inne i loopen */
foreach ($test as $random => $sweclockers) {
if ($random == "Hans") {
$varde = $sweclockers; //$varde får värdet på den plats i arrayen som har nyckeln "Hans", d.v.s. 5
}
}
Ifall du vill göra så att alla spelare med samma poäng som vinnaren skrivs ut blir det genast lite mer invecklat. Det kan göras på diverse sätt, men jag skulle använda någon slags array för det. Ett sätt skulle kunna vara att först genom att använda $hscore-variabeln se vilket som är det högsta värdet. Sedan skapar du en ny array, och loopar igenom $totaler en gång till. Denna gång gör du så att varje nyckel som har samma värde som $hscore så sparar du i den nya arrayen (t.ex. om $hscore är 19, och $totaler[1], $totaler[3] och $totaler[7] alla har det värdet så sparar du siffrorna 0, 3 och 7 i den nya arrayen). Därefter kan du skriva ut vilka alla spelare som nådde högsta poäng.