嗨,这是我的var_dump结果。我的问题是:如果我的数组包含多个相同的“名称”(在我的情况下为“Test2”),则删除其中一个。就我而言,来自[0]或[1]的所有信息。 THX。
array(3) {
[0]=>
object(stdClass)#24 (14) {
["name"]=>
string(19) "Test2"
["taskid"]=>
string(5) "11526"
}
[1]=>
object(stdClass)#25 (14) {
["name"]=>
string(19) "Test2"
["taskid"]=>
string(5) "11526"
}
[2]=>
object(stdClass)#26 (14) {
["name"]=>
string(19) "Test1"
["taskid"]=>
string(5) "11525"
}
}
我想要这个结果:
array(3) {
[0]=>
object(stdClass)#24 (14) {
["name"]=>
string(19) "Test2"
["taskid"]=>
string(5) "11526"
}
[1]=>
object(stdClass)#26 (14) {
["name"]=>
string(19) "Test1"
["taskid"]=>
string(5) "11525"
}
}
答案 0 :(得分:1)
在你的例子中,dublicates不是数组而是对象,所以你需要像array_map
和array_unique
这样组合:
$arrayResult = array_map("unserialize", array_unique(array_map("serialize", $inputArray)));
或尝试
$arrayResult = array();
foreach ( $inputArray as $item ) {
isset($arrayResult[$item->taskid]) or $arrayResult[$item->taskid] = $item;
}
var_dump($arrayResult);
答案 1 :(得分:0)
您可以使用array_unique()函数