So summieren Sie eine Spalte eines Arrays in PHP

PHPz
Freigeben: 2023-04-26 09:40:55
Original
581 Leute haben es durchsucht

In PHP ist das Summieren einer Spalte eines Arrays eine häufige Anforderung. Wenn es sich bei dem Array um ein eindimensionales Array handelt, verwenden Sie die Funktion array_sum(). Zum Beispiel:

$array = array(1, 2, 3, 4, 5);
$sum = array_sum($array); // $sum = 15
Nach dem Login kopieren

Wenn das Array jedoch ein zweidimensionales Array ist, müssen Sie zuerst alle Werte der Spalte extrahieren und sie dann summieren. Sie können die Funktion array_column() verwenden, um die Werte einer Spalte zu extrahieren, und dann die Funktion array_sum() verwenden, um die Werte zu summieren. Zum Beispiel:

$records = array(
    array('name' => 'John', 'score' => 85),
    array('name' => 'Mary', 'score' => 92),
    array('name' => 'Peter', 'score' => 78),
    array('name' => 'Lisa', 'score' => 89)
);
$scores = array_column($records, 'score');
$sum = array_sum($scores); // $sum = 344
Nach dem Login kopieren

Im obigen Beispiel ist $records ein zweidimensionales Array, das den Namen und die Punktzahl jeder Person enthält. Verwenden Sie die Funktion array_column(), um alle Ergebnisse zu extrahieren, und verwenden Sie dann die Funktion array_sum(), um sie zu summieren, was zu einem Gesamtergebnis von 344 führt.

Es ist zu beachten, dass die Werte der Spalte, wenn sie nicht numerische Typen (z. B. Zeichenfolgen) enthalten, zuerst durch Typkonvertierung in Zahlen umgewandelt werden müssen. Andernfalls kann das Ergebnis der Summe ungenau sein. Zum Beispiel:

$records = array(
    array('name' => 'John', 'score' => '85'),
    array('name' => 'Mary', 'score' => '92'),
    array('name' => 'Peter', 'score' => '78'),
    array('name' => 'Lisa', 'score' => '89')
);
$scores = array_column($records, 'score');
$sum = array_sum($scores); // $sum = 0
Nach dem Login kopieren

Im obigen Beispiel sind die Scores in $records alle String-Typen. Wenn Sie sie direkt summieren, erhalten Sie ein ungenaues Ergebnis von 0. Sie können in numerische Typen konvertiert werden, indem Sie das dritte Argument in der Funktion array_column() angeben. Zum Beispiel:

$records = array(
    array('name' => 'John', 'score' => '85'),
    array('name' => 'Mary', 'score' => '92'),
    array('name' => 'Peter', 'score' => '78'),
    array('name' => 'Lisa', 'score' => '89')
);
$scores = array_column($records, 'score', 'name');
$scores = array_map('intval', $scores);
$sum = array_sum($scores); // $sum = 344
Nach dem Login kopieren

Im obigen Beispiel wird die Funktion array_column() verwendet, um die Punktzahlen jeder Person zu extrahieren und sie in einem neuen Array mit dem Namen als Schlüssel und der Punktzahl als Wert zu speichern. Verwenden Sie dann die Funktion array_map(), um diese Werte typkonvertiert, und verwenden Sie schließlich die Funktion array_sum(), um sie zu summieren und das korrekte Ergebnis von 344 zu erhalten.

Zusammenfassend lässt sich sagen, dass das Summieren einer Spalte eines Arrays in PHP nicht schwierig ist. Sie müssen nur auf den Datentyp achten.

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!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!