【问题标题】:How to array_push unique values inside another array如何array_push另一个数组中的唯一值
【发布时间】:2016-10-10 20:57:53
【问题描述】:

我有两个数组:

$DocumentID = array(document-1, document-2, document-3, document-4,
                    document-5, document-4, document-3, document-2);

$UniqueDocumentID = array();

我想将 $documentid 数组中的唯一对象推送到 $UniqueDocumentID 数组。

我不能使用array_unique(),因为它复制了其前身数组的键,我想要$UniqueDocumentID 数组中的顺序键。

【问题讨论】:

  • $UniqueDocumentID = array_unique($DocumentID);???
  • 首先在$DocumentID中创建一个有效数组
  • 我不能使用array_unique,因为它复制了其前身数组的 key 并且我想要 $UniqueDocumentID 数组中的顺序键,这就是为什么我需要将对象推入$UniqueDocumentID 数组以将它们保持在 key 的升序序列中。

标签: php arrays unique array-push


【解决方案1】:

您可以foreach()$DocumentID 并检查$UniqueDocumentIDin_array() 中的当前值,如果不存在则添加它。或使用适当的工具:

$UniqueDocumentID = array_unique($DocumentID);

关于想要顺序键的评论:

$UniqueDocumentID = array_values(array_unique($DocumentID));

漫长的路:

$UniqueDocumentID = array();

foreach($DocumentID as $value) {
    if(!in_array($value, $UniqueDocumentID)) {
        $UniqueDocumentID[] = $value;
    }
}

【讨论】:

    猜你喜欢
    • 2017-12-24
    • 2011-05-14
    • 1970-01-01
    • 2011-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-12
    • 2020-07-02
    相关资源
    最近更新 更多