PHP array_unique() 函数

实例

移除数组中重复的值:

<?php
$a=array("a"=>"red","b"=>"green","c"=>"red");
print_r(array_unique($a));
?>

运行实例

定义和用法

array_unique() 函数移除数组中的重复的值,并返回结果数组。

当几个数组元素的值相等时,只保留第一个元素,其他的元素被删除。

返回的数组中键名不变。

注释:被保留的数组将保持第一个数组项的键名类型。

语法

array_unique(array)
参数 描述
array 必需。规定数组。
sortingtype

可选。规定如何比较数组元素/项目。可能的值:

  • SORT_STRING - 默认。把项目作为字符串来比较。
  • SORT_REGULAR - 把每一项按常规顺序排列(Standard ASCII,不改变类型)。
  • SORT_NUMERIC - 把每一项作为数字来处理。
  • SORT_LOCALE_STRING - 把每一项作为字符串来处理,基于当前区域设置(可通过 setlocale() 进行更改)。

说明

array_unique() 先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留。

技术细节

返回值: 返回被过滤的数组。
PHP 版本: 4.0.1+
更新日志:

在 PHP 5.2.10 中,sortingtype 的默认值改回 SORT_STRING。

在 PHP 5.2.9 中,sortingtype 的默认值改为 SORT_REGULAR。在这之前的版本,sortingtype 的默认值为 SORT_STRING。