array_unique
(PHP 4 >= 4.0.1, PHP 5)
array_unique — 移除数组中重复的值
说明
array <strong>array_unique</strong>
( array <code>$array</code>
[, int <code>$sort_flags</code> = SORT_STRING
] )
<p>
<strong>array_unique()</strong> 接受
<code>array</code> 作为输入并返回没有重复值的新数组。
</p>
<p>
注意键名保留不变。<strong>array_unique()</strong>
先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的
<code>array</code> 中同一个值的第一个出现的键名会被保留。
</p>
<p><strong>Note</strong>:
当且仅当
(string) $elem1 === (string) $elem2 时两个单元被认为相同。就是说,当字符串的表达一样时。
第一个单元将被保留。
</p>
参数
array
输入的数组。
sort_flags
The optional second parameter sort_flags
may be used to modify the sorting behavior using these values:
Sorting type flags:
SORT_REGULAR
- compare items normally
(don't change types)
SORT_NUMERIC
- compare items numerically
SORT_STRING
- compare items as strings
SORT_LOCALE_STRING
- compare items as
strings, based on the current locale.
返回值
Returns the filtered array.
更新日志
版本
说明
5.2.10
Changed the default value of sort_flags
back to
SORT_STRING
.
5.2.9
Added the optional sort_flags
defaulting
to SORT_REGULAR
. Prior to 5.2.9, this function used to sort
the array with SORT_STRING
internally.
范例
Example #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 )
Example #2 array_unique() 和类型
<?php
$input = array(4, "4", "3", 4, 3, "3");
$result = array_unique($input);
var_dump($result);
?>
以上例程会输出:
array(2) { [0] => int(4) [2] => string(1) "3" }
参见
array_count_values() - 统计数组中所有的值出现的次数
注释
Note: Note that array_unique() is not intended to work on multi dimensional arrays.