PHP函数:array_unique()的去重用法
array_unique()函数是PHP中用来去除数组中重复值的函数。它会返回一个新的数组,其中只包含原数组中的唯一值,并保持原数组中的键值关系不变。
array_unique()函数的用法非常简单,只需要将要去重的数组作为参数传递给它即可。下面是一个使用array_unique()函数的示例:
$array = array(1, 2, 3, 4, 4, 5, 6, 6); $result = array_unique($array); print_r($result);
输出结果为:
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[5] => 5
[6] => 6
)
在上面的例子中,原数组中的4和6重复出现了,而使用array_unique()函数之后,只保留了一个出现过的4和6,得到了一个去重后的新数组。
array_unique()函数的去重是通过比较字符串或者数字的值来实现的。它会将第一个出现的值保留下来,而后面出现的相同值都会被忽略。所以在使用array_unique()函数时,注意数组中的元素是如何比较的。
需要注意的是,array_unique()函数只会去除数组中第一次出现的重复值,而不会去除后面重复出现的值。如果想要去除所有重复值,可以使用array_values()函数来重新索引新数组。
下面是一个去除数组中所有重复值的示例:
$array = array(1, 2, 3, 4, 4, 5, 6, 6); $result = array_values(array_unique($array)); print_r($result);
输出结果为:
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
)
在上面的例子中,我们先使用array_unique()函数去除了数组中的重复值,然后再使用array_values()函数重新索引了新数组。
除了索引数组,array_unique()函数还可以处理关联数组,它会保留每个键值对的第一个出现的值,并且保持原数组的键值的关系不变。
下面是一个去除关联数组中重复值的示例:
$array = array("a" => 1, "b" => 2, "c" => 2, "d" => 3, "e" => 4, "f" => 4);
$result = array_unique($array);
print_r($result);
输出结果为:
Array
(
[a] => 1
[b] => 2
[d] => 3
[e] => 4
)
在上面的例子中,原数组中的"c"和"f"键的值都重复了,而使用array_unique()函数之后,只保留了第一次出现的值,得到了一个去重后的新数组。
总结来说,array_unique()函数是PHP中一个很实用的函数,可以用来去除数组中的重复值。它可以处理索引数组和关联数组,且保持原数组的键值关系不变。在使用array_unique()函数时,要注意它只会去除第一次出现的重复值,如果需要去除所有重复值,可以使用array_values()函数重新索引新数组。
