php 如何去除一个数组里面的重复值?按一般的思维,一般都会是进行两个 foreach 循环剔除掉数组里面相同的值。但是这个方法不是一种最优的方法,下面介绍一个 php 自带的数组函数 array_flip 函数。
首先介绍一下 array_flip 函数。
array array_flip ( array trans)
trans 需要进行反转的数组
【功能】
函数交换数组中的键和值,该函数将返回一个反转后的数组,即原数组的值变成了新数组的键值,原数组的键值变成了新数组的值。如果数组中有相同的值,则只有最后的一个具有同样值的才会被反转到新数组。
【使用范围】
php4、php5
【示例】
<?php $trans = array ("a" => 1, "b" => 1, "c" => 2); $trans = array_flip ($trans); print_r($trans); ?>
以上结果为:
Array ( [1] => b [2] => c )
由以上结果我们可以看出,array_flip 函数能够去除数组里面的值重复的项,那么如果我们需要去除一个数组里面的重复项的话,只需对该数组进行两次 array_flip 即可。还是上例中的数据,如果如下:
<?php $trans = array ("a" => 1, "b" => 1, "c" => 2); $trans = array_flip (array_flip($trans)); print_r($trans); ?>
则结果为:
Array ( [b] => 1 [c] => 2 )