如何使用PHParray_unique()函数
PHP中的array_unique()函数用于返回数组中不同的值。使用此函数可以清除重复项并返回新数组。此函数不会修改原始数组,而是返回不同的值组成的新数组。
array_unique()函数的语法为:array array_unique( array $array, int $sort_flags = SORT_STRING )
其中,$array是要操作的数组,$sort_flags是可选参数,用于指定排序方式。
下面是使用array_unique()函数的几个示例:
例1:基本用法
<?php
$arr = array('apple','orange','banana','apple','orange');
print_r(array_unique($arr));
?>
输出结果为:
Array
(
[0] => apple
[1] => orange
[2] => banana
)
该例演示了如何使用array_unique()函数将数组中的重复项去除,并输出清除后的数组。
例2:使用可选参数指定排序方式
<?php
$arr = array('apple','orange','banana','apple','orange');
print_r(array_unique($arr,SORT_NUMERIC));
?>
输出结果为:
Array
(
[0] => apple
[1] => orange
[2] => banana
)
该例使用了可选参数SORT_NUMERIC来指定排序方式为数值型。在进行去重操作时,会将数组中的元素转换为数值类型,并按照数值大小进行排序。如果不指定排序方式,默认为字符串类型排序。
例3:应用于多维数组
<?php
$arr = array(
array('id'=>1,'name'=>'张三'),
array('id'=>2,'name'=>'李四'),
array('id'=>1,'name'=>'张三'),
array('id'=>3,'name'=>'王五'),
array('id'=>2,'name'=>'李四')
);
print_r(array_unique($arr,SORT_REGULAR));
?>
输出结果为:
Array
(
[0] => Array
(
[id] => 1
[name] => 张三
)
[1] => Array
(
[id] => 2
[name] => 李四
)
[3] => Array
(
[id] => 3
[name] => 王五
)
)
该例演示了如何将array_unique()函数应用于多维数组。对于多维数组,需要指定可选参数SORT_REGULAR来进行比较操作,否则会出现丢失或重复的情况。
需要注意的是,array_unique()函数只返回不同的值,但它并不会重新索引数组的键。如果需要重建键,可以使用array_values()函数。
总结:array_unique()函数是PHP中一个很实用的函数,用于去除数组中的重复项并返回新数组。使用时可以考虑可选参数来指定排序方式,也可以应用于多维数组中。
