根据特定字段删除数组中的重复项

时间:2013-11-24 17:46:16

标签: php arrays

我在PHP中有一个像这样的数组:

[{"pos"=0,"name"="Tom"},{"pos"=1,"name"="John"},{"pos"=2,"name"="Tom"}]

我想基于“name”删除此数组中的重复项。换句话说,我想得到一个这样的数组:

[{"pos"=0,"name"="Tom"},{"pos"=1,"name"="John"}]

我们怎么做?

1 个答案:

答案 0 :(得分:1)

$unique = array();
$arr = array_filter($arr, function($v) use(&$unique){
    $inArray = in_array($v->name, $unique);
    if(!$inArray) $unique[] = $v->name;
    return !$inArray;
});

demo