Heim  >  Artikel  >  Backend-Entwicklung  >  So summieren Sie eine Spalte eines Arrays in PHP

So summieren Sie eine Spalte eines Arrays in PHP

PHPz
PHPzOriginal
2023-04-25 09:05:45725Durchsuche

In der PHP-Programmierung ist Array ein sehr häufig verwendeter Datentyp, der zum Speichern einer Reihe von Daten verwendet werden kann, und das Summieren einer Datenspalte in einem Array ist oft eine der erforderlichen Operationen. Als nächstes stellen wir vor, wie man eine Spalte eines Arrays in PHP summiert.

In PHP können Sie alle Elemente in einem Array mit der Funktion array_sum() summieren, die ein Array als Parameter akzeptiert und die Summe aller Elemente im Array zurückgibt. Zum Beispiel:

$numbers = array(1, 2, 3, 4, 5);
$sum = array_sum($numbers);
echo "数组元素总和为:$sum";

Der obige Code gibt Folgendes aus:

数组元素总和为:15

Aber was ist, wenn wir eine bestimmte Datenspalte im Array summieren müssen? PHP verfügt nicht über eine integrierte Funktion, um diese Funktion direkt zu implementieren. Wir müssen den Code selbst schreiben.

Zum Beispiel haben wir ein zweidimensionales Array $data, das mehrere Datenzeilen enthält. Jede Datenzeile hat die gleiche Datenstruktur, wie unten gezeigt:

$data = array(
    array('id' => 1, 'name' => 'Tom', 'score' => 80),
    array('id' => 2, 'name' => 'Jack', 'score' => 90),
    array('id' => 3, 'name' => 'Mary', 'score' => 85),
);

Jetzt müssen wir die Spalte „Score“ vergleichen im $data-Array Die Datensummierung kann durch Befolgen der folgenden Schritte implementiert werden:

  1. Definieren Sie eine Variable $sum und initialisieren Sie sie auf 0, um das Summierungsergebnis zu speichern:
$sum = 0;
  1. Durchlaufen Sie das Array $data und nehmen Sie jede Zeile heraus der Daten nacheinander und speichern Sie die Summe. Der Wert der Spalte „Score“ in den Zeilendaten wird in der Variablen „$sum“ akkumuliert:
foreach ($data as $row) {
    $sum += $row['score'];
}
  1. Schließlich wird in der Variablen „$sum“ die Summe der „ Spaltendaten „Score“.

Der vollständige Code lautet wie folgt:

$data = array(
    array('id' => 1, 'name' => 'Tom', 'score' => 80),
    array('id' => 2, 'name' => 'Jack', 'score' => 90),
    array('id' => 3, 'name' => 'Mary', 'score' => 85),
);

$sum = 0;

foreach ($data as $row) {
    $sum += $row['score'];
}

echo "score 列数据总和为:$sum";

Der obige Code gibt Folgendes aus:

score 列数据总和为:255

Die zeitliche Komplexität des obigen Algorithmus beträgt O(n), wobei n die Anzahl der Zeilen des Arrays $data darstellt eine relativ effiziente Summationsmethode.

Zusätzlich zu den oben genannten Methoden können Sie auch die Funktion array_column() verwenden, um die Daten einer Spalte im Array abzurufen, und dann die Funktion array_sum() verwenden, um die Daten in der Spalte zu summieren. Beispiel:

$data = array(
    array('id' => 1, 'name' => 'Tom', 'score' => 80),
    array('id' => 2, 'name' => 'Jack', 'score' => 90),
    array('id' => 3, 'name' => 'Mary', 'score' => 85),
);

$scores = array_column($data, 'score');
$sum = array_sum($scores);

echo "score 列数据总和为:$sum";

Der obige Code gibt Folgendes aus:

score 列数据总和为:255

Der Vorteil der Verwendung der Funktion array_column() zum Abrufen einer Datenspalte in einem Array besteht darin, dass Sie die abzurufenden Spalten flexibel auswählen und auch zusammenarbeiten können mit anderen Array-Funktionen, um komplexere Operationen auszuführen.

Zusammenfassend lässt sich sagen, dass das Summieren einer Spalte eines Arrays in PHP durch Durchlaufen des Arrays und Sammeln der Daten der Spalte erreicht werden kann. Sie können auch die Funktion array_column() verwenden, um zuerst die Daten der Spalte abzurufen und diese dann zu verwenden die Funktion array_sum() zum Berechnen von und. Je nach Situation sollte die am besten geeignete Methode gewählt werden.

Das obige ist der detaillierte Inhalt vonSo summieren Sie eine Spalte eines Arrays in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn