php二維數組求和用array_sum嗎
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二維數組求和用array_sum嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前
By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
擊敗分裂小說需要多長時間?
3 週前
By DDD
R.E.P.O.保存文件位置:在哪里以及如何保護它?
3 週前
By DDD

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南

如何設定 Visual Studio Code (VS Code) 進行 PHP 開發
