Wie Summe mehrdimensionalen arrays in PHP-ohne zu verschmelzen-Werte
Sagen wir, ich habe das folgende array und ich möchte hinzufügen, bis die sub-array-Werte mit PHP:
$summary = array(
"person1" => array(
question1 => '3',
question2 => '5'),
"person2" => array(
question1 => '2',
question2 => '3'),
"person3" => array(
question1 => '1',
question2 => '2')
);
Wie kann ich die Ausgabe der einzelnen array-Summen für jede person, eher als die Summierung aller Werte aus allen sub-arrays? Zum Beispiel:
$summary = array(
"person1" => array(
questions => '8'),
"person2" => array(
questions => '5'),
"person3" => array(
questions => '3')
);
Ich zu sein scheinen in der Lage, fügen Sie bis zu 16 mithilfe einer foreach-Schleife, aber was ich brauche, ist einzelnen Werte, so kann ich bekommen den höchsten Wert und tiefsten Wert.
Vielen Dank im Voraus!
- Fehlt eine
)
nachquestion2 => '5'
? - Ja...ich tippte dies und denke, dass ich vergaß hinzuzufügen, schließen Klammern. Danke für den Hinweis!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Schleife durch alle Menschen, bekommen Sie die Summe der Fragen, und legen Sie Sie in der gleichen Tonart, wie Sie gekommen sind.
Ausgabe:
Damit haben Sie ein array von arrays und wollen zurück ein array mit den Summen der einzelnen subarray?
Alles, was Sie würde tun müssen, dann ist call
max
auf das zurückgegebene arrayDiese sollte es tun.
Initialisieren Sie die Summe Wert, die die Summe jeder Reihe von Fragen auf, Versteck die Summe Wert, und wiederholen Sie, bis fertig. Sie könnten array_sum() in der Mischung anstelle der inneren foreach-Schleife. Ich vergesse immer über die PHP array Funktionen. Das wäre diese:
Wesentlich kürzer und wahrscheinlich effizienter.
Können Sie die Iteration über die vorhandenen array finden Sie die Summe der Markierungen für alle Fragen, die für eine bestimmte person, und ersetzen Sie den vorhandenen Wert ( ein array ) mit dem neu erstellten array:
Sehen
Simple Funktion wie:
Es kann aufgerufen werden wie: