首页 > 解决方案 > 删除具有重复值的数组记录

问题描述

在数组中,如何删除具有重复值的记录?例如,我有:

container_array
(
    [0] => sub_array
        (
            [order_id] => 14539972
            [name] => Desiree
        )

    [1] => sub_array
        (
            [order_id] => 14570621
            [name] => Jana
        )

    [2] => sub_array
        (
            [order_id] => 14574112
            [name] => Debra
        )

    [3] => sub_array
        (
            [order_id] => 14570621
            [name] => Jana
        )

    [4] => sub_array
        (
            [order_id] => 14570621
            [name] => Jana
        )
)

订单 ID 14570621 重复多次。如何删除重复项以便只保留一个?结果数组应为:

container_array
(
    [0] => sub_array
        (
            [order_id] => 14539972
            [name] => Desiree
        )

    [1] => sub_array
        (
            [order_id] => 14570621
            [name] => Jana
        )

    [2] => sub_array
        (
            [order_id] => 14574112
            [name] => Debra
        )
)

标签: phparrays

解决方案


这段代码可以帮助你吗?

<?php
$cars = array
  (
  array("Volvo",22,18),
  array("BMW",15,13),
  array("Saab",5,2),
  array("Land Rover",17,15),
  array("Land Rover",17,15)
  );

var_dump($cars);
$input = array_map("unserialize", array_unique(array_map("serialize", $cars)));
echo '<br>';
var_dump($input);


?>

推荐阅读