php根据字段合并数组,根据相同的id合并数组,需求是用户有多个昵称,查出来每个昵称对应一条记录,想把同一个用户的昵称等信息合并成一条,初始数据如下:php根据字段合并数组,根据相同的id合并数组,需求是用户有多个昵称,查出来每个昵称对应一条记录,想把同一个用户的昵称等信息合并成一条,初始数据如下: $a = array( ['id' = 1, 'name' = 'liming' ,'nickname'= 'aaa'], ['id' = 1, 'name' = 'liming' ,'nickname'= '
$a = array(
['id' => 1, 'name' => 'liming' ,'nickname'=> 'aaa'],
['id' => 1, 'name' => 'liming' ,'nickname'=> 'bbb'],
['id' => 1, 'name' => 'liming' ,'nickname'=> 'ccc'],
['id' => 2, 'name' => 'xiaoqiang' ,'nickname'=> 'ddd'],
['id' => 2, 'name' => 'xiaoqiang' ,'nickname'=> 'eee'],
['id' => 2, 'name' => 'xiaoqiang' ,'nickname'=> 'fff'],
);
想要实现的格式:
$b = array(
[
'id' => 1,
'name' => 'liming',
'nickname_list'=> [
['nickname'=> 'aaa'],
['nickname'=> 'bbb'],
['nickname'=> 'ccc'],
]
],
[
'id' => 1,
'name' => 'xiaoqiang',
'nickname_list'=> [
['nickname'=> 'ddd'],
['nickname'=> 'eee'],
['nickname'=> 'fff'],
]
]
);
实现代码如下:
$temp = [];
foreach ($a as $k => $value) {
$temp[$value['id']] = ['id' => $value['id'], 'name' => $value['name']];
$temp[$value['id']]['nickname_list'][] = $value;
}
$temp = array_values($temp);//关联数组转为索引数组 topstudy.com.cn
var_dump($temp);
沃梦达教程
本文标题为:php怎么合并id相同的数组
基础教程推荐
猜你喜欢
- laravel 解决多库下的DB::transaction()事务失效问题 2023-03-08
- laravel ORM关联关系中的 with和whereHas用法 2023-03-02
- PHP实现Redis单据锁以及防止并发重复写入 2022-10-12
- PHP命名空间简单用法示例 2022-12-01
- PHP中的错误及其处理机制 2023-06-04
- 在Laravel中实现使用AJAX动态刷新部分页面 2023-03-02
- PHP获取MySQL执行sql语句的查询时间方法 2022-11-09
- thinkphp3.2.3框架动态切换多数据库的方法分析 2023-03-19
- 使用PHP开发留言板功能 2023-03-13
- php array分组,PHP中array数组的分组排序 2022-08-01