我的数组中有重复的记录,如下所示
Array ( [0] =>
Array (
[driverId] => 112
[amount] => 15
[firstname] => Katty
)
[1]=>
Array (
[driverId] => 112
[amount] => 15
[firstname] => Katty
)
[2]=>
Array (
[driverId] => 118
[amount] => 15
[firstname] => Starkj
)
)
我想用driverId删除,以便我的数组不会有重复的结果。我尝试使用array_unique,但是没有成功。我怎样才能实现这一目标?
答案 0 :(得分:1)
如果您使用SORT_REGULAR
标志,则可以使用array_unique()
:
array_unique($array, SORT_REGULAR);
5.2.9添加了可选的sort_flags默认为SORT_REGULAR。在5.2.9之前,此函数用于使用SORT_STRING对数组进行排序 内部。
测试结果
[akshay@localhost tmp]$ cat test.php
<?php
$array = array(
array('driverId'=>112,'amount'=>15,'firstname'=>'Katty'),
array('driverId'=>112,'amount'=>15,'firstname'=>'Katty'),
array('driverId'=>118,'amount'=>15,'firstname'=>'Starkj')
);
print_r( array_unique($array, SORT_REGULAR) );
?>
<强> 输出 强>
[akshay@localhost tmp]$ php test.php
Array
(
[0] => Array
(
[driverId] => 112
[amount] => 15
[firstname] => Katty
)
[2] => Array
(
[driverId] => 118
[amount] => 15
[firstname] => Starkj
)
)
答案 1 :(得分:0)
从帖子中获取
$priceList= array_map("unserialize", array_unique(array_map("serialize", $priceList)));
希望它会有所帮助。