• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

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

php 搞代码 4年前 (2022-01-24) 16次浏览 已收录 0个评论

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

本帖最后由 myths621 于 2013-03-19 12:04:11 编辑

首次发帖,请假高手
我从redis中取出五维数组需要处理相加,如下

<br />$a = array(<br />	<br />		0 => array(<br /><br />			0=> array(<br />			<br />				"date" => "201201",<br />				"area"=> array(<br />					12 => array(<br />						click => "3",<br />						traffic => "30"<br />					)	<br />				)<br />			),	<br /><br />			1=> array(<br />			<br />				"date" => "201202",<br />				"area"=> array(<br />					12 => array(<br />						click => "8",<br />						traffic => "40"<br />					),<br />					8=> array(<br />						click => "5",<br />						traffic => "50"<br />					)<br />				)<br />			)	<br />			<br />		),<br /><br />		1 => array(<br />		<br />			0=> array(<br />			<br />				"date" => "201201",<br />				"area"=> array(<br />					12 => array(<br />						click => "9",<br />						traffic => "20"<br />					),<br />					8=> array(<br />						click => "6",<br />						traffic => "60"<br />					)<br />				)<br />				),<br />			<br />			1=> array(<br />			<br />				"date" => "201202",<br />				"area" => NULL<br />			)<br />		),<br />	<br />	<br />	);<br /><br />

希望数据处理后,相同date前提下,area里相同的key所对应的click和traffic值相加,即0和1这两个大数组,date为201001的,area中12所对应的click和traffic处理后应该是12和50,8对应的是6和60,其他类推,求遍历或其他能处理成功的方法,感激不尽~!

多维数组

——解决方案——————–
最后结果是怎么样的? 贴一下。
——解决方案——————–

$t = array();<br />foreach<mark style="color:transparent">本%文来源gaodaimacom搞#^代%!码网@</mark>搞代gaodaima码 ($a as $k=>$v)<br />{<br />	foreach ($v as $k1=>$v1)<br />	{<br />		$t[0][$k1]['date'] = $v1['date'];<br />		foreach ($v1['area'] as $k2=>$v2)<br />		{<br />			$t[0][$k1]['area'][$k2]['click'] += $v2['click'];<br />			$t[0][$k1]['area'][$k2]['traffic'] += $v2['traffic'];<br />		}<br />	}<br />}<br />echo "<pre class="prettyprint linenums">";<br />print_r($t);<br />echo "<pre class="prettyprint linenums">";

结果如下:

Array
(
[0] => Array
(
[0] => Array
(
[date] => 201201
[area] => Array
(
[12] => Array
(
[click] => 12


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:多维数组中相同元素相加有关问题
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址