后端开发|php教程
php
后端开发-php教程
现有一个数组是这样的
dnf60级源码,vscode怎么启动js调试,ubuntu装zmap,tomcat7 el,反爬虫简介,php静态方法调用变量,广州seo优化公司霸屏,html做网站,mvc 后台模板lzw
$arr = array( => array( =>array(price=> 118080814c7565909,count=> 100,money=> 200, ), 1=>array(price=> 118080814c7eca590,count=> 10,money=> 27, ), 2 =>array(price=> 118080814c7eca5901,count=> 19,money=> 200, ), ), 1=>array( =>array(price=> 118080814c7565979,count=> 100,money=> 200, ), 1=>array(price=> 118080814c7eca888,count=> 101,money=> 27, ), 2 =>array(price=> 118080814c7eca59000,count=> 160,money=> 200, ), ), 2=>array( =>array(price=> 118080814c7565009,count=> 190,money=> 230, ), 1=>array(price=> 118080814c7eca670,count=> 120,money=> 217, ), 2 =>array(price=> 118080814c7eca5098,count=> 120,money=> 205, ), ));
我需要的是计算出这个三维数组里面的小数组里面count 相加的和,这个三维里面有三个小数组,小数组里面还有三个数组,要求的就是这三个第二维里面的数组count的和, 我foreach 出来然后 += 是把这个三维数组里面所有的count 都相加了,我现在不需要求全部的和,需要分别的和,求帮忙在下面发下解决的方式,谢谢! 不知道我表述清楚没有,如果没有表述清楚,回复下谢谢
地图网站源码,vscode离线插件包资源,ubuntu系统死机,tomcat停止前未注销驱动,sqlite 数组类型,网页设计特色,服务器和vps,网页特效脚本插件,web前端后台框架,爬虫类工具,php中传值,seo优化初级教程,快递公司网站源码php,网页网站源码,个人秀模板,小程序页面引用js,数据管理系统文档,易语言程序存盘lzw
仿莎莎论坛网站源码,vscode svn高亮,ack ubuntu,启动tomcat验证,sqlite中文版界面,人人商城签到插件标志,写文本框的前端 框架,用python网络爬虫是什么,php 另存为,闽侯专业seo技术,免费视频导航网站源码,网页项目源码模板,帝国cms绿色目录模板lzw
回复内容:
现有一个数组是这样的
$arr = array( => array( =>array(price=> 118080814c7565909,count=> 100,money=> 200, ), 1=>array(price=> 118080814c7eca590,count=> 10,money=> 27, ), 2 =>array(price=> 118080814c7eca5901,count=> 19,money=> 200, ), ), 1=>array( =>array(price=> 118080814c7565979,count=> 100,money=> 200, ), 1=>array(price=> 118080814c7eca888,count=> 101,money=> 27, ), 2 =>array(price=> 118080814c7eca59000,count=> 160,money=> 200, ), ), 2=>array( =>array(price=> 118080814c7565009,count=> 190,money=> 230, ), 1=>array(price=> 118080814c7eca670,count=> 120,money=> 217, ), 2 =>array(price=> 118080814c7eca5098,count=> 120,money=> 205, ), ));
我需要的是计算出这个三维数组里面的小数组里面count 相加的和,这个三维里面有三个小数组,小数组里面还有三个数组,要求的就是这三个第二维里面的数组count的和, 我foreach 出来然后 += 是把这个三维数组里面所有的count 都相加了,我现在不需要求全部的和,需要分别的和,求帮忙在下面发下解决的方式,谢谢! 不知道我表述清楚没有,如果没有表述清楚,回复下谢谢
";var_dump($count_arr);exit;$arr = array( => array( =>array(price=> 118080814c7565909,count=> 100,money=> 200, ), 1=>array(price=> 118080814c7eca590,count=> 10,money=> 27, ), 2 =>array(price=> 118080814c7eca5901,count=> 19,money=> 200, ), ), 1=>array( =>array(price=> 118080814c7565979,count=> 100,money=> 200, ), 1=>array(price=> 118080814c7eca888,count=> 101,money=> 27, ), 2 =>array(price=> 118080814c7eca59000,count=> 160,money=> 200, ), ), 2=>array( =>array(price=> 118080814c7565009,count=> 190,money=> 230, ), 1=>array(price=> 118080814c7eca670,count=> 120,money=> 217, ), 2 =>array(price=> 118080814c7eca5098,count=> 120,money=> 205, ), ));foreach($arr as $key=>$val){ $count_arr[$key]=0; if(is_array($val)){ foreach($val as $key1=>$val1){ $count_arr[$key]+=$val1[count]; } }}echo "
foreach外围定义一个空数组
然后两个foreach
在第二层foreach里面就可以统计第二层数组中的总计了
而且是分组的
每一组总和相当于这个数组的元素
想要计算所有总和
再遍历这个数组不就行了吗
手机码字 不方便上代码 我这个方法是除去演示数据 也就四行…
-------分割线------
电脑上线了,贴上代码吧
//定义空数组 准备储存下面的数据$save=array();foreach ($arr as $key=>$list) { //手机上想的时候忘记考虑初始化的问题 $save[$key]=0; //遍历内部数组 foreach($list as $item){ //将内部数组的count项累加 $save[$key]+=$item[count]; }}//打印出来var_dump($save);//上面的代码已经实现了你想要的功能 好人做到底 下面是计算全部总数的$countAll=0;foreach($save as $item){ $countAll+=$item;}var_dump($countAll);
function sum(array $array){ $tmp = 0; array_walk($array,function($value) use(&$tmp){ isset($value[count]) && $tmp+=$value[count]; }); return $tmp;}$sumList = array();array_walk($arr,function($value) use(&$sumList){ $sumList[] = sum($value);});var_dump($sumList);
$result=array();
foreach ($arr as $val)
{
$count=0;foreach ($val as $v) {$count+=count($v); }$result[]=$count;
}
// $result 这个数组里面存放的就是这个三维数组中每个二维数组下的所有小数组的长度和。