方法:1、用array_sum(),可以計算數(shù)組中所有元素的和,語法“array_sum($arr)”;2、使用for語句循環(huán)遍歷數(shù)組,將元素一個個相加求和,語法“for($i=0;$i<數(shù)組長度;$i++){$sum+=$arr[$i];}”;3、使用foreach語句循環(huán)遍歷數(shù)組,將元素一個個相加求和,語法“foreach($arr as $v){$sum+=$v;}”。
本教程操作環(huán)境:windows7系統(tǒng)、PHP8版、DELL G3電腦
PHP中提供多種方法來求數(shù)組元素相加之和,下面介紹三種。
方法1:使用array_sum()函數(shù)
array_sum()是PHP中的一個內(nèi)置函數(shù),可以計算數(shù)組中所有元素的和,并返回元素之和。
<?php header("Content-type:text/html;charset=utf-8"); $array= array(1,2,3,4,5,6,7,8,9,10); var_dump($array); echo '數(shù)組所有元素之和:'. array_sum($array); ?>
說明:
-
如果$array中所有元素都是整數(shù),則返回一個整數(shù)值;如果其中有一個或多個值是浮點數(shù),則返回浮點數(shù)。
-
如果$array中存在非數(shù)值類型的元素,那么PHP會將它們轉(zhuǎn)換成一個數(shù)值(PHP是弱語言類型,會根據(jù)變量的值,自動把變量轉(zhuǎn)換為正確的數(shù)據(jù)類型),轉(zhuǎn)換失敗就作為 0 值來參加計算。
<?php header("Content-type:text/html;charset=utf-8"); $array= array("10.1xy", 100, '1', "0.01"); var_dump($array); echo '數(shù)組所有元素之和:'. array_sum($array); ?>
方法2:使用for語句循環(huán)遍歷數(shù)組,將元素一個個相加求和
<?php $array= array(1,2,3,4,5,6,7,8,9,10); $sum=0; $len=count($array);//數(shù)組長度 for ($i=0; $i < $len; $i++) { $sum+=$array[$i]; } echo '1 + 2 + 3 +...+ 9 + 10 = '. $sum; ?>
注:for語句只對索引數(shù)組有效,無法遍歷關(guān)聯(lián)數(shù)組
for循環(huán)會將控制循環(huán)次數(shù)的變量預(yù)先定義在for語句中,因此for循環(huán)語句能夠按照已知的循環(huán)次數(shù)進行循環(huán)操作,適用于明確知道腳本需要運行的次數(shù)的情況(根據(jù)索引數(shù)組的數(shù)字下標)。
方法3:使用foreach循環(huán)遍歷數(shù)組,將元素一個個相加求和
foreach是專門為遍歷數(shù)組而設(shè)計的語句,是遍歷數(shù)組時常用的方法,在遍歷數(shù)組方面提供了很大的便利;PHP5后還可以遍歷對象(foreach僅能夠應(yīng)用于數(shù)組和對象)。
foreach語句遍歷數(shù)組與數(shù)組下標無關(guān),且可以用于不連續(xù)的索引數(shù)組和以字符串為下標的關(guān)聯(lián)數(shù)組。
<?php header('content-type:text/html;charset=utf-8'); $array= array(1,2,3,4,5,6,7,8,9,10); $sum=0; foreach ($array as $value) { $sum+=$value; } echo '數(shù)組所有元素之和:'. $sum; ?>
推薦學(xué)習(xí):《PHP視頻教程》