【问题标题】:How to remove duplicates within the key of an array如何删除数组键中的重复项
【发布时间】:2015-04-21 17:38:47
【问题描述】:

我正在创建一个 php 站点,并且正在尝试删除键数组中的所有重复值。因此,如果我在键数组中有两次例如 2,我将如何删除其中一个。

我的数组如下所示:

Array
{
    [class 1] => Array
      {
           [0] => 1
           [1] => 2
           [2] => 3
           [3] => 2
      }


    [class 2] => Array
      {
           [0] => 1
           [1] => 2
           [2] => 3
           [3] => 2
      }
}

我想删除整个数组中出现的重复项。

Array
{
    [class 1] => Array
      {
           [0] => 1
           [1] => 2
           [2] => 3
      }


    [class 2] => Array
      {
           [0] => 1
           [1] => 2
           [2] => 3
      }
}

我在网上看过,但我只能找到如何删除重复键的示例。也许这可以通过 foreach 循环来完成,但我不确定。 所有帮助表示赞赏。谢谢。

【问题讨论】:

  • 内置函数不会这样做。您必须在主数组上循环,并在每个子数组上执行array_unique()

标签: php arrays key


【解决方案1】:

只需使用array_map对数组的每个子数组执行array_unique即可:

$array = array_map('array_unique', $array);

没有必要,但如果您想在之后重新排序密钥,请以同样的方式使用 array_values

$array = array_map('array_values', $array);

【讨论】:

  • 感谢您的帮助
猜你喜欢
  • 1970-01-01
  • 2017-11-12
  • 2012-12-11
  • 2017-06-21
  • 2011-12-13
  • 2011-07-28
  • 2022-01-03
  • 2012-10-04
相关资源
最近更新 更多