Float Werte aus Array summieren ???

Hallo Community !

Mit dem Befehl AC_GetLoggedValues bekomme ich alle Werte eines Monats.
Ich möchte diese Werte summieren und in eine Variable schreiben.
Mit array_sum funktioniert es nicht da bekomme ich eine falsche Summe.

$Array = AC_GetLoggedValues(51787 /*[Archiv]*/, 50779 /*[Photovoltaik\Statistik\Tagesenergie Gesamt]*/, mktime(0, 0, 0, 1, 1, 2018), mktime(23, 59, 59, 1, 31, 2018), 0);

foreach($Array as $wert) {
echo date("d.m.Y H:i:s", $wert['TimeStamp']) . " -> " . $wert['Value'] . PHP_EOL;
}

$Total = array_sum($wert);
echo "<br /><br />Summe = $Total <br />";

Symcon.JPG

Hat jemand eine Idee :confused:

Die versuchst array_sum auf $wert anzuwenden, das ist aber ein Array der mehr als nur die Werte enthält die Du addieren willst. Daher solltest Du Dir einen Array erstellen, der auch nur die Werte enthält die Du brauchst und summieren willst. Wenn Du da nur die Werte mit array_sum addieren willst kannst Du das so machen:


$Array = AC_GetLoggedValues(51787 /*[Archiv]*/, 50779 /*[Photovoltaik\Statistik\Tagesenergie Gesamt]*/, mktime(0, 0, 0, 1, 1, 2018), mktime(23, 59, 59, 1, 31, 2018), 0);
$array_values = [];

foreach($Array as $wert) { 
$array_values[] = $wert['Value'];
echo date("d.m.Y H:i:s", $wert['TimeStamp']) . " -> " . $wert['Value'] . PHP_EOL; 
} 
$Total = array_sum($array_values); 
echo "<br /><br />Summe = $Total <br />";  


Du möchtest doch eigentlich $wert[VALUE] summieren.
(Hochkomma finde ich gerade nicht)

Nachtrag: Sorry, überschnitten

Gesendet von iPhone mit Tapatalk

Aus Interesse mal nachgeschlagen.
Quelle: https://stackoverflow.com/questions/12838729/multidimensional-array-array-sum


$Array = AC_GetLoggedValues(51787 /*[Archiv]*/, 50779 /*[Photovoltaik\Statistik\Tagesenergie Gesamt]*/, mktime(0, 0, 0, 1, 1, 2018), mktime(23, 59, 59, 1, 31, 2018), 0); 

$Total = array_sum(array_column($Array, 'Value'));

echo "<br /><br />Summe = $Total <br />";  

Grüße
Pio

Danke PIO hat funktioniert :smiley: