PHP函数使用:array_unique()函数用法和实例详解
发布时间:2023-06-30 17:18:00
array_unique()函数是PHP中常用的数组处理函数之一,其作用是去除数组中的重复值并返回一个新的数组。
array_unique()函数的基本用法非常简单,只需要传入一个待处理的数组作为参数即可。例如:
$arr = array(1, 2, 2, 3, 4, 4); $result = array_unique($arr); print_r($result);
运行以上代码,输出结果为:
Array
(
[0] => 1
[1] => 2
[3] => 3
[4] => 4
)
可以看到,原数组中的重复值2和4已经被去除,得到了一个无重复值的新数组。
此外,array_unique()函数还可以对关联数组进行操作。例如:
$arr = array("a" => 1, "b" => 2, "c" => 2, "d" => 3, "e" => 4, "f" => 4);
$result = array_unique($arr);
print_r($result);
输出结果为:
Array
(
[a] => 1
[b] => 2
[d] => 3
[e] => 4
)
同样可以看到,重复的值2和4已经被去除。
需要注意的是,原数组中的键名会被保留。这也是array_unique()函数与其他去除数组重复值的方法(如使用array_flip()函数)的区别之一。
在实际应用中,array_unique()函数可以用于去除用户重复提交的数据、过滤掉重复的数据库查询结果等等。
但需要注意的是,array_unique()函数对于多维数组的处理有限。如果待处理的数组是一个多维数组,那么只会对一维数组进行去重,而不会递归处理多维数组中的每一个元素。如果需要对多维数组进行完全去重,可以使用array_map()函数结合array_unique()函数来实现。例如:
$arr = array(
array(1, 2, 2, 3),
array(4, 5, 5),
array(6, 7, 7)
);
$result = array_map("array_unique", $arr);
print_r($result);
输出结果为:
Array
(
[0] => Array
(
[0] => 1
[1] => 2
[3] => 3
)
[1] => Array
(
[0] => 4
[1] => 5
)
[2] => Array
(
[0] => 6
[1] => 7
)
)
可以看到,每个子数组中的重复值已经被去除。
综上所述,array_unique()函数是PHP中常用的数组处理函数之一,可以方便地去除数组中的重复值并返回一个新的数组。使用时需要注意其对于多维数组的处理限制,可以结合其他函数来实现多维数组的完全去重。
