Heim  >  Artikel  >  Backend-Entwicklung  >  Verwenden Sie array_sum, um zweidimensionale Arrays in PHP zu summieren?

Verwenden Sie array_sum, um zweidimensionale Arrays in PHP zu summieren?

青灯夜游
青灯夜游Original
2022-09-21 19:58:312065Durchsuche

Es ist nicht möglich, array_sum() nur zum Summieren zweidimensionaler Arrays in PHP zu verwenden, da die Funktion array_sum() nur eindimensionale Arrays verarbeitet, wenn Sie array_sum() zum Implementieren zweidimensionaler Array-Summen verwenden möchten. Sie müssen auch die foreach-Anweisung verwenden, die Syntax „ $sum=0;foreach($arr as $v){if(is_array($v)){$sum+=array_sum($v);}else{$sum+= $v;}}".

Verwenden Sie array_sum, um zweidimensionale Arrays in PHP zu summieren?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 8.1, DELL G3-Computer

Das zweidimensionale PHP-Array kann nicht nur mit array_sum() summiert werden.

Ursache: Die Funktion array_sum() verarbeitet nur eindimensionale Arrays und ist für mehrdimensionale Arrays ungültig.

<?php
header("Content-type:text/html;charset=utf-8");
$arr = array(1,2,3,array(4,5,6),7,8,array(9,10)); 
var_dump($arr);
$sum=array_sum($arr);
echo "二维数组的和为:".$sum;
?>

Verwenden Sie array_sum, um zweidimensionale Arrays in PHP zu summieren?

Das Berechnungsergebnis ist offensichtlich falsch. Es zählt nur die Summe der äußeren Elemente.

Verwenden Sie array_sum, um zweidimensionale Arrays in PHP zu summieren?

Wie verwende ich also die Funktion array_sum(), um die Summe der Elemente eines zweidimensionalen Arrays zu berechnen? Lösung: Funktion array_sum() + foreach-Anweisung zu Ein bestimmtes $arr-Array und weisen Sie $v in jeder Schleife den Wert des aktuellen äußeren Arrays zu.

Schritt 2. Verwenden Sie im Schleifenkörper die Funktion is_array(), um zu bestimmen, ob das äußere Element ein Array-Typ ist, und verwenden Sie den Operator „+=" zum Summieren

Wenn es kein Array-Typ ist Wenn es sich um einen Array-Typ handelt, verwenden Sie die Funktion array_sum(), um die Summe aller Elemente im inneren Array zu berechnen, und addieren Sie sie zur Summe der äußere Elemente.

foreach($arr as $v){
//循环体代码
}

    Implementierungscode:
  • if(is_array($v)){
    	$sum+=array_sum($v);
    }else{
    	$sum+=$v;
    }
  • Rufen Sie die obige Funktion auf
function f($arr){
	$sum=0;
	foreach($arr as $v){
		if(is_array($v)){
			$sum+=array_sum($v);
		}else{
			$sum+=$v;
		}
	}
	echo "二维数组的和为:".$sum."<br>";
}

$arr = array(1,2,3,array(4,5,6),7,8,array(9,10)); 
var_dump($arr);
f($arr);

  • Empfohlenes Lernen: „

    PHP-Video „

Das obige ist der detaillierte Inhalt vonVerwenden Sie array_sum, um zweidimensionale Arrays in PHP zu summieren?. 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