如何 array_push 另一个数组中的唯一值

How to array_push unique values inside another array

我有两个数组:

$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 数组中的顺序键。

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

$UniqueDocumentID = array_unique($DocumentID);

关于你想要顺序键的评论:

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

漫漫长路:

$UniqueDocumentID = array();

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