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

KazJ 2015-04-22 12:09:05



如图 有一个数组 需要去重 重组数组的格式 在线讨论
...全文
221 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
KazJ 2015-04-29
  • 打赏
  • 举报
回复
引用 6 楼 wlei24wlei 的回复:

<meta charset="utf-8">
<?php 
	$arra = array(
		0 => array(
			'id' => 0,
			'send_mobile'=> '13267310236',
			'c_content'=>'天气很热注意防暑'
		),
		1 => array(
			'id' => 1,
			'send_mobile'=> '13267310285',
			'c_content'=>'天气很热注意防暑'
		),
		2 => array(
			'id' => 2,
			'send_mobile'=> '13267310126',
			'c_content'=>'天气很热注意防暑'
		),
		3 => array(
			'id' => 3,
			'send_mobile'=> '13267310166',
			'c_content'=>'天气防暑'
		)
	);

	$arrb = array();
	
	foreach ($arra as $v){
		$b = $v['c_content'];
		if(isset($arrb[$b])) 
			$arrb[$b]['send_mobile'] .= ','.$v['send_mobile'];
		$arrb[$b] = isset($arrb[$b])?$arrb[$b]:$v;
	}
	
	$arrb = array_values($arrb);
	print_r($arrb);
?>
谢谢 这个问题已经解决
Terry_Fengtian 2015-04-27
  • 打赏
  • 举报
回复
新建个数组b,遍历原数组a,如果遍历项中的c_content没有作为键名出现在b中,则插入一个b[c_content];否则把遍历到的send_mobile加进去,最后再把b数组整个重新键值排序一下。
xuzuning 2015-04-22
  • 打赏
  • 举报
回复
贴出由 var_export 输出的示例数组,没有讨论的基础是讨论不起来的 其实很简单,你只要按聚类键聚类就可以了
anymorelj001 2015-04-22
  • 打赏
  • 举报
回复
提示你一下 中文可以作为数组键 foreach ($arra as $k=>$v) { $res [$v[c_content]] = $v; } 一句话ok
yc8332 2015-04-22
  • 打赏
  • 举报
回复
看你那个是用c_id做区分的吧,那就直接用cid做key, $arr[$cid][] = $val
wlei_coder 2015-04-22
  • 打赏
  • 举报
回复

<meta charset="utf-8">
<?php
$arra = array(
0 => array(
'id' => 0,
'send_mobile'=> '13267310236',
'c_content'=>'天气很热注意防暑'
),
1 => array(
'id' => 1,
'send_mobile'=> '13267310285',
'c_content'=>'天气很热注意防暑'
),
2 => array(
'id' => 2,
'send_mobile'=> '13267310126',
'c_content'=>'天气很热注意防暑'
),
3 => array(
'id' => 3,
'send_mobile'=> '13267310166',
'c_content'=>'天气防暑'
)
);

$arrb = array();

foreach ($arra as $v){
$b = $v['c_content'];
if(isset($arrb[$b]))
$arrb[$b]['send_mobile'] .= ','.$v['send_mobile'];
$arrb[$b] = isset($arrb[$b])?$arrb[$b]:$v;
}

$arrb = array_values($arrb);
print_r($arrb);
?>


xiaobuxun 2015-04-22
  • 打赏
  • 举报
回复
有什么要求?如果只要单纯实现的话,不可以用循环吗?
xuzuning 2015-04-22
  • 打赏
  • 举报
回复
为什么要截图呢?难道要我一个个的去打字?
KazJ 2015-04-22
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
贴出由 var_export 输出的示例数组,没有讨论的基础是讨论不起来的

其实很简单,你只要按聚类键聚类就可以了

这是现在的得到数组

希望 得到下面的格式


请问版主 这种怎么去 格式化

21,887

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧