数据格式:$data=[['id'=>'a8856','date'=>'20100612'],['id'=>'a8856','date'=>'20180102'],['id'=>'top856','date'=>'20100612'],['id'=>'c8236','date'=>'20100612'],['id'=>'e2569','date'=>'20010612'],['id'=>'e2569','date'=>'20150825']];寻求帮助:上述数组中id值可能重复,但date值唯一,我想去重重复项,保留日期最新记录,例如:2个id都是e2569,但date一个是2001的另一个是2015的,就删除2001这一条,保留2015这条记录,可能会有多个id重复的值。在线几等、、、求demo谢谢,或者内置函数有能解决此问题的吗?
2 回答

慕无忌1623718
TA贡献1744条经验 获得超4个赞
foreach($dataas$v){if(!isset($arr[$v['id']])){$arr[$v['id']]=$v;}elseif($arr[$v['id']]['date']<$v['date']){$arr[$v['id']]['date']=$v['date'];}}$new=array_values($arr);
添加回答
举报
0/150
提交
取消