【发布时间】:2026-02-16 23:05:02
【问题描述】:
我想知道是否有人可以建议如何从具有相同键 color 的项目的子数组中删除重复项目。在下面的示例中,索引 0 的颜色为 red、blue 和 green,第二个颜色为 red、purple、red。我希望在索引级别删除重复项,以便索引 0 的输出应保持red、blue、green 和索引 2 的输出red、purple。
$array = [
[
['color' => 'RED'],
['color' => 'BLUE'],
['color' => 'GREEN']
],
[
['color' => 'RED'],
['color' => 'PURPLE'],
['color' => 'RED']
]
];
$new_array = [];
foreach ($array as $item) {
$new_array[] = array_unique($item);
}
echo json_encode($new_array);
这段代码输出
[[{"color":"RED"}],[{"color":"RED"}]]
因此只需删除相同密钥的重复项。输出需要是:
[[{"color":"RED"},{"color":"BLUE"},{"color":"GREEN"}],[{"color":"RED"},{"color":"PURPLE"}]]
【问题讨论】:
-
为什么使用'color'索引?所有元素都相似
-
这只是一个示例,但在进行粗口调用等时将需要进一步进行
-
你可以像这样设置数组:
$array = [ ['RED','BLUE','GREEN'], ['RED','PURPLE','RED'] ];- 它似乎工作得很好
标签: php arrays multidimensional-array duplicates sub-array