欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

多维数组中相同元素相加有关问题

程序员文章站 2024-04-06 14:09:43
...
多维数组中相同元素相加问题
本帖最后由 myths621 于 2013-03-19 12:04:11 编辑 首次发帖,请假高手
我从redis中取出五维数组需要处理相加,如下

$a = array(

0 => array(

0=> array(

"date" => "201201",
"area"=> array(
12 => array(
click => "3",
traffic => "30"
)
)
),

1=> array(

"date" => "201202",
"area"=> array(
12 => array(
click => "8",
traffic => "40"
),
8=> array(
click => "5",
traffic => "50"
)
)
)

),

1 => array(

0=> array(

"date" => "201201",
"area"=> array(
12 => array(
click => "9",
traffic => "20"
),
8=> array(
click => "6",
traffic => "60"
)
)
),

1=> array(

"date" => "201202",
"area" => NULL
)
),


);



希望数据处理后,相同date前提下,area里相同的key所对应的click和traffic值相加,即0和1这两个大数组,date为201001的,area中12所对应的click和traffic处理后应该是12和50,8对应的是6和60,其他类推,求遍历或其他能处理成功的方法,感激不尽~!
多维数组
------解决方案--------------------
最后结果是怎么样的? 贴一下。
------解决方案--------------------
$t = array();
foreach ($a as $k=>$v)
{
foreach ($v as $k1=>$v1)
{
$t[0][$k1]['date'] = $v1['date'];
foreach ($v1['area'] as $k2=>$v2)
{
$t[0][$k1]['area'][$k2]['click'] += $v2['click'];
$t[0][$k1]['area'][$k2]['traffic'] += $v2['traffic'];
}
}
}
echo "
";
print_r($t);
echo "
";


结果如下:

Array
(
[0] => Array
(
[0] => Array
(
[date] => 201201
[area] => Array
(
[12] => Array
(
[click] => 12
多维数组中相同元素相加有关问题

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • 多维数组中相同元素相加有关问题
  • 专题推荐

    作者信息
    多维数组中相同元素相加有关问题

    认证0级讲师

    推荐视频教程
  • 多维数组中相同元素相加有关问题javascript初级视频教程
  • 多维数组中相同元素相加有关问题jquery 基础视频教程
  • 视频教程分类