php如何去除重复数据

php去除重复数据的方法:1、利用“array_unique”函数直接将一个数组中的重复的值去除;2、利用“array_flip”函数和“array_keys”函数一起实现去除重复数据。

创新互联是一家集网站建设,泰顺企业网站建设,泰顺品牌网站建设,网站定制,泰顺网站建设报价,网络营销,网络优化,泰顺网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

推荐:《PHP视频教程》

两种PHP中去除数组中重复数据的方法

1.直接利用array_unique函数

利用array_unique函数可以直接将一个数组中的重复的值去除,只保留重复值中的第一次出现的值和其对应的键值

具体的说明可以查看PHP手册

例1:

$input = array("a" => "green", "red", "b" => "green", "blue", "red");
$result = array_unique($input);
print_r($result);
此时输出:
Array
(
    [a] => green
    [0] => red
    [1] => blue
)

注意:在array_unique函数中,若出现 int(3) 和 string(1) '3' 时,函数会将这两个值认成同一个值,也只会保留先出现那个值

例2:

$input = array(4, "4", "3", 4, 3, "3");
$result = array_unique($input);
var_dump($result);

此时会输出:

array(2) {
  [0] => int(4)
  [2] => string(1) "3"
}

2.利用array_flip函数和array_keys函数一起作用

在利用array_unique函数是非常的方便,但是有一点,array_unique函数不会改变保留下来的值得原先的键值,这对于在某些情况下对于新数组的操作带来了困难,此时就可以利用array_flip函数和array_keys函数

array_flip函数

将指定数组的值和键值对调,将键名变成了值,而原先数组中的值成了键名,并且如果同一个值出现了多次,则最后一个键名将作为它的值,所有其它的都丢失了。

例如:

$trans = array("a" => 1, "b" => 1, "c" => 2);
$trans = array_flip($trans);
print_r($trans);

此时输出:

Array
(
    [1] => b
    [2] => c
)

array_keys函数

array_keys函数,可以返回数组中部分的或所有的键名,这个比较好理解,如果指定了serch_value则是返回指定查询值的键值

例如:

$array = array(0 => 100, "color" => "red");
print_r(array_keys($array));
$array = array("blue", "red", "green", "blue", "blue");
print_r(array_keys($array, "blue"));
$array = array("color" => array("blue", "red", "green"),
               "size"  => array("small", "medium", "large"));
print_r(array_keys($array));

此时会输出:

Array
(
    [0] => 0
    [1] => color
)
Array
(
    [0] => 0
    [1] => 3
    [2] => 4
)
Array
(
    [0] => color
    [1] => size
)

介绍完两个函数的使用后,在遇到一个数据重复很多的数组时,想剔除中间重复的数据而又想键值从 ‘0’ 开始计数时,可以先对函数使用array_flip函数,然后在对新的数组使用array_keys函数,即可实现

补充:在编辑介绍array_keys函数的时候突然想到应该有个函数可以取出所有的数组的value的,查了一下果然有array_value函数,这个函数可以返回一个数组的所有的值并记录进新的数组,这样也可以实现键值从 ‘0’ 开始计数,所以想实现本篇文章的目的也可以先使用array_unique函数,接着对其使用array_value函数。

网站标题:php如何去除重复数据
当前路径:https://www.cdcxhl.com/article18/cjgsdp.html

成都网站建设公司_创新互联,为您提供网站设计公司网站维护手机网站建设用户体验网站改版网站策划

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都app开发公司