首页  >  文章  >  后端开发  >  数组 去重 统计有关问题 有点难度的计算方法

数组 去重 统计有关问题 有点难度的计算方法

WBOY
WBOY原创
2016-06-13 12:18:52940浏览

数组 去重 统计问题 有点难度的计算方法



如图 有一个数组 需要去重  重组数组的格式  在线讨论
------解决思路----------------------

<br /><meta charset="utf-8"><br /><?php <br />	$arra = array(<br />		0 => array(<br />			'id' => 0,<br />			'send_mobile'=> '13267310236',<br />			'c_content'=>'天气很热注意防暑'<br />		),<br />		1 => array(<br />			'id' => 1,<br />			'send_mobile'=> '13267310285',<br />			'c_content'=>'天气很热注意防暑'<br />		),<br />		2 => array(<br />			'id' => 2,<br />			'send_mobile'=> '13267310126',<br />			'c_content'=>'天气很热注意防暑'<br />		),<br />		3 => array(<br />			'id' => 3,<br />			'send_mobile'=> '13267310166',<br />			'c_content'=>'天气防暑'<br />		)<br />	);<br /><br />	$arrb = array();<br />	<br />	foreach ($arra as $v){<br />		$b = $v['c_content'];<br />		if(isset($arrb[$b])) <br />			$arrb[$b]['send_mobile'] .= ','.$v['send_mobile'];<br />		$arrb[$b] = isset($arrb[$b])?$arrb[$b]:$v;<br />	}<br />	<br />	$arrb = array_values($arrb);<br />	print_r($arrb);<br />?><br />



------解决思路----------------------
看你那个是用c_id做区分的吧,那就直接用cid做key, $arr[$cid][] = $val
------解决思路----------------------
提示你一下  中文可以作为数组键   

foreach ($arra as $k=>$v) { $res [$v[c_content]] = $v; } 
一句话ok
------解决思路----------------------
新建个数组b,遍历原数组a,如果遍历项中的c_content没有作为键名出现在b中,则插入一个b[c_content];否则把遍历到的send_mobile加进去,最后再把b数组整个重新键值排序一下。

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