1、需求
- 将下方数组
$arr
格式化为 [[A,B,C,D,E,F], [X,Y,Z]]
2、编码
copy$arr = [
['A', 'B'],
['A', 'C'],
['A', 'D'],
['C', 'E'],
['D', 'F'],
['X', 'Y'],
['X', 'Z']
];
$result = array();
foreach ($arr as $subArr) {
$merged = false;
foreach ($result as &$r) {
if (array_intersect($r, $subArr)) {
$r = array_unique(array_merge($r, $subArr));
$merged = true;
break;
}
}
if (!$merged) {
$result[] = $subArr;
}
}
print_r($result);
3、输出结果
copy [
0 => [
0 => "A"
1 => "B"
2 => "C"
3 => "D"
4 => "E"
6 => "F"
]
1 => [
0 => "X"
1 => "Y"
3 => "Z"
]
]
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构