我正在開發包含名稱和分數列的排名表。還有一個額外的列僅用於顯示Total,這是所有分數的總和。總和數組值
我正在使用array_sum
並從$scores
數組中提取信息,其中組織值。即使總和工作正常,它只會返回方括號中指定名稱的值。即:array_sum($scores["Mike"])
爲循環中的每一行打印37)。另一方面,如果我只使用array_sum($scores)
,它會爲循環中的每一行輸出0!我需要每個名字正確的總和到數組中。
以下是我有:
//scores values for each name
$scores = array(
"Mike" => array(04, 03, 00, 07, 04, 07, 00, 01, 00, 07, 04),
"Kyle" => array(07, 01, 00, 03, 04, 01, 00, 07, 03, 04, 04),
"Johnny" => array(07, 07, 00, 03, 00, 04, 00, 01, 01, 04, 03),
"Will" => array(03, 04, 00, 03, 04, 07, 00, 01, 00, 07, 04),
"Vasques" => array(03, 01, 00, 03, 04, 07, 00, 01, 00, 07, 07)
);
//start loop for rows
foreach($scores as $key=>$value) {
echo "<tr>";
//column for the names
echo "<td>$key</td>";
//Total Column
echo "<td class='total' align='center' valign='middle'>" . array_sum($scores["Mike"]) . "</td>";
//loop for columns where the score should be displayed
for($x=0; $x<count($value); $x++) {
echo "<td class='games tip' align='center' valign='middle'>".sprintf('%02d', $value[$x])."</td>";
}
echo "</tr>";
}
應該是這樣顯示的東西:
Mike 37 04 03 00 07 04 07 00 01 00 07 04
Kyle 34 07 01 00 03 04 01 00 07 03 04 04
Johnny 33 03 01 00 03 04 07 00 01 00 07 07
等等...... 37,34和33的總和。
'array_sum($分數[ 「邁克」])'應'array_sum($值)' - 此外,請注意,您的前導0告訴PHP數字是八進制數,00到07是相同的,但08和09是無效的,而010與十進制數是9相同。 – scragar