欢迎访问宙启技术站
智能推送

使用PHP的array_unique函数去重

发布时间:2023-11-01 00:12:03

PHP的array_unique函数是一个非常有用的函数,它可以用来去除数组中的重复值。

array_unique函数的语法非常简单:

array array_unique ( array $array [, int $sort_flags = SORT_STRING ] )

它接受一个数组作为参数,并返回一个没有重复值的新数组。

下面是一个示例:

$arr = array(1, 2, 3, 4, 1, 2, 5);
$uniqueArr = array_unique($arr);

print_r($uniqueArr);

输出结果为:

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [6] => 5
)

在这个例子中,原始数组$arr中包含了重复的元素1和2。使用array_unique函数,我们得到了一个新数组$uniqueArr,其中不包含重复值。

array_unique函数默认采用字符串比较的方式去重,如果数组中的元素是数字类型,可以通过第二个参数$sort_flags来指定排序方式。

$sort_flags参数是一个可选参数,可以接受以下四个常量:

- SORT_STRING:按照字符串比较的方式去重,默认值。

- SORT_NUMERIC:按照数值比较的方式去重。

- SORT_REGULAR:按照原始顺序比较的方式去重。

- SORT_LOCALE_STRING:按照当前区域设置并且使用字符串比较的方式去重。

例如:

$arr = array("1", "2", "3", 1, 2, 3);
$uniqueArr = array_unique($arr, SORT_NUMERIC);

print_r($uniqueArr);

输出结果为:

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
)

在这个例子中,原始数组$arr包含了字符串类型的数字和整数类型的数字。使用array_unique函数,并通过第二个参数指定为SORT_NUMERIC,我们得到了一个新数组$uniqueArr,其中字符串类型的数字被转换为整数类型的数字,并去除了重复值。

总结一下,array_unique函数是PHP中一个非常有用的函数,可以用来去除数组中的重复值,并且可以通过第二个参数来指定比较方式。使用这个函数可以非常方便地对数组进行去重操作。