php利用array_flip实现数组键值交换去除数组重复值

PHP 投稿 8900 0 评论

php利用array_flip实现数组键值交换去除数组重复值

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
)

编程笔记 » php利用array_flip实现数组键值交换去除数组重复值

赞同 (52) or 分享 (0)
游客 发表我的评论   换个身份
取消评论

表情
(0)个小伙伴在吐槽