【发布时间】:2022-02-09 22:09:41
【问题描述】:
我有以下数组:
$array = [
['id' => 1, 'code' => '342'],
['id' => 2, 'code' => '765'],
['id' => 3, 'code' => '134'],
['id' => 1, 'code' => '999'],
];
这里Array[0]['id'] 和Array[3]['id'] 是关于['id'] 的重复项。我想删除其中一个(没关系)。
其实我以为我用这段代码找到了解决方案:
//data
$row = $stmt->fetchALL(PDO::FETCH_ASSOC);
$ids = array();
for($i = 0;$i < count($row); $i++ )
{
if (in_array($row[$i]['id'], $ids))
{
unset($row[$i]);
continue;
}
$ids[] = $row[$i]['id'];
}
print_r($row);
由于某种原因,它适用于小型数组,但如果我有很多重复的值,它会失败。对我所缺少的有什么建议吗?
【问题讨论】:
标签: php arrays duplicates filtering