您好,登錄后才能下訂單哦!
這篇文章主要介紹了php二維數組怎么求和的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇php二維數組怎么求和文章都會有所收獲,下面我們一起來看看吧。
php中二維數組求和只用array_sum()是不行的,因為array_sum()函數只處理一維數組;想要使用array_sum()實現二維數組求和,還需要借助foreach語句,語法“$sum=0;foreach($arr as $v){if(is_array($v)){$sum+=array_sum($v);}else{$sum+=$v;}}”。
本教程操作環境:windows7系統、PHP8.1版、DELL G3電腦
php二維數組只用array_sum()是無法求和的。
原因:array_sum()函數只處理一維數組,對多維數組無效。
<?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; ?>
計算的結果明顯不對,它只統計的外層元素的和。
那么怎么利用array_sum()函數計算二維數組的元素總和?
解決方法:array_sum()函數+foreach語句
求和步驟
步驟1、使用foreach語句循環遍歷二維數組的外層數組元素
foreach($arr as $v){ //循環體代碼 }
遍歷給定的 $arr 數組,在每次循環中將當前外層數組的值賦給 $v。
步驟2、在循環體,使用is_array()函數判斷外層元素是否為數組類型,并利用“+=”運算符求和
如果不是數組類型,則將不是的外層元素相加求和
如果是數組類型,則使用array_sum()函數計算該內層數組中所有元素的和,并與外層元素和相加在一起即可。
if(is_array($v)){ $sum+=array_sum($v); }else{ $sum+=$v; }
實現代碼:
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);
$arr = array(array(2,4,6),array(8,10,12)); var_dump($arr); f($arr);
關于“php二維數組怎么求和”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“php二維數組怎么求和”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。