了解PHP常用函数:array_unique()
发布时间:2023-06-22 03:03:04
array_unique()函数是一个常用的PHP函数,用于移除数组中重复的元素。
常见用法是将一个包含重复元素的数组去重,其语法如下:
array_unique ( array $array [, int $sort_flags = SORT_STRING ] ) : array
其中,array为待去重的数组,sort_flags为可选参数,表示排序选项,默认为SORT_STRING。
下面我们以实例来说明该函数的调用方法:
$my_array = array('apple', 'banana', 'apple', 'orange', 'banana', 'pear');
$unique_array = array_unique($my_array);
print_r($unique_array);
运行结果:
Array
(
[0] => apple
[1] => banana
[3] => orange
[4] => pear
)
从运行结果可以看出,数组中的重复元素已被移除,只留下了 的元素。
另外,需要注意的是该函数并不会保留原数组的键名,而是按照新的索引重新排序。如果想要保留原数组键名,可以通过以下方法实现:
$my_array = array('apple', 'banana', 'apple', 'orange', 'banana', 'pear');
$unique_array = array_unique($my_array);
$preserve_key_array = array_intersect_key($my_array, $unique_array);
print_r($preserve_key_array);
运行结果:
Array
(
[0] => apple
[1] => banana
[3] => orange
[5] => pear
)
通过array_intersect_key()函数实现,其功能是返回两个数组中键名相同的元素。由于去重后的数组$unique_array与原数组$my_array的键名都是重新排序过的,因此可以通过该函数实现保留原数组键名的功能。
总结一下,array_unique()函数是一个简单实用的PHP函数,用于移除数组中的重复元素。在实际开发中,应该根据实际需要选择适当的函数调用方式,以达到 的效果和性能。
