📜  PHP | array_unique()函数

📅  最后修改于: 2022-05-13 01:56:36.524000             🧑  作者: Mango

PHP | array_unique()函数

很多时候,在编写程序或开发时,我们需要过滤数组以删除重复项。 PHP为我们提供了一个内置函数来执行此操作,使我们的工作变得简单。 array_unique() 是PHP中的内置函数,该函数从数组中删除重复值。如果数组中有多个具有相同值的元素,则将保留第一个出现的元素,并从数组中删除该元素的所有其他出现。

此外,根据此函数,当且仅当 (字符串) $elem1 === (字符串) $elem2 即当元素的字符串表示相同时,才认为两个元素相等。

语法

array array_unique($array , $sort_flags)

注意:数组的键被保留。也就是说,输入数组中未删除元素的键在输出数组中将相同。

参数:此函数接受两个参数,其中一个是必需的,另一个是可选的。这两个参数描述如下:

  1. $array :必须提供此参数,它指定我们要从中删除重复项的输入数组。
  2. $sort_flags :这是可选参数。此参数 $sort_flags 可用于使用以下值修改排序行为:
    • SORT_REGULAR:这是参数 $sort_flags 的默认值。该值告诉函数正常比较项目(不要更改类型)。
    • SORT_NUMERIC:此值告诉函数以数字方式比较项目。
    • SORT_STRING:此值告诉函数将项目作为字符串进行比较。
    • SORT_LOCALE_STRING:此值告诉函数根据当前语言环境将项目作为字符串进行比较。

返回值:array_unique()函数在从数组中删除所有重复项后返回过滤后的数组。

下面的程序说明了PHP中的 array_unique()函数:

示例 1


输出:

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

示例 2

"MH", "b"=>"JK", "c"=>"JK", "d"=>"OR");
  
// Array after removing duplicates
print_r(array_unique($arr));
  
?>

输出:

Array
(
    [a] => MH
    [b] => JK
    [d] => OR
)

需要注意的要点:

  • array_unique() 不适用于多维数组。
  • 输入数组的键被保留。
  • 根据这个函数,如果两个元素的字符串表示相同,则认为它们相等。

参考
http:http:// PHP.net/manual/en/函数.array-unique.phpp