array_unique

(PHP 4 >= 4.0.1, PHP 5, PHP 7, PHP 8)

array_unique移除數(shù)組中重復(fù)的值

說明

array_unique(array $array, int $flags = SORT_STRING): array

array_unique() 接受 array 作為輸入并返回沒有重復(fù)值的新數(shù)組。

注意鍵名保留不變。如果在指定了 flags 時存在多個相等的元素, 會保留第一個相等的元素的鍵(key)和值(value)。

注意: 當(dāng)且僅當(dāng) (string) $elem1 === (string) $elem2 時兩個單元被認(rèn)為相同。 例如,字符串表達一樣時,會使用首個元素。

參數(shù)

array

輸入的數(shù)組。

flags

第二個可選參數(shù)flags 可用于修改排序行為:

排序類型標(biāo)記:

  • SORT_REGULAR - 按照通常方法比較(不修改類型)
  • SORT_NUMERIC - 按照數(shù)字形式比較
  • SORT_STRING - 按照字符串形式比較
  • SORT_LOCALE_STRING - 根據(jù)當(dāng)前的本地化設(shè)置,按照字符串比較。

返回值

返回過濾后的數(shù)組。

更新日志

版本 說明
7.2.0 如果 flagsSORT_STRING, 之前會復(fù)制 array 并移除非唯一數(shù)組(之后并不打包數(shù)組), 現(xiàn)在是通過添加唯一元素來生成新數(shù)組。這可能會導(dǎo)致不同的數(shù)字索引。

范例

示例 #1 array_unique() 例子

<?php
$input 
= array("a" => "green""red""b" => "green""blue""red");
$result array_unique($input);
print_r($result);
?>

以上例程會輸出:

Array
(
    [a] => green
    [0] => red
    [1] => blue
)

示例 #2 array_unique() 和類型

<?php
$input 
= array(4"4""3"43"3");
$result array_unique($input);
var_dump($result);
?>

以上例程會輸出:

array(2) {
  [0] => int(4)
  [2] => string(1) "3"
}

注釋

注意: 注意, array_unique() 不能應(yīng)用于多維數(shù)組。

參見