加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

PHP数组去重的更快实现方式分析

发布时间:2021-05-16 13:35:43 所属栏目:编程 来源:网络整理
导读:本篇章节讲授PHP数组去重的更快实现方法。供各人参考研究详细如下: 概述 行使PHP的 array_unique() 函数应承你转达一个数组,然后移除一再的值,返回一个拥有独一值的数组。这个函数大大都环境下都能事变得很好。可是,假如你实行在一个大的数组

本篇章节讲授PHP数组去重的更快实现方法。分享给各人供各人参考,详细如下:

概述

行使PHP的array_unique()函数应承你转达一个数组,然后移除一再的值,返回一个拥有独一值的数组。这个函数大大都环境下都能事变得很好。可是,假如你实行在一个大的数组里行使array_unique()函数,它会运行地慢一些。

有一个较量好并且更快的函数array_flip()来更换行使array_unique()函数来建设独一的数组。这个邪术般的函数会互换数组内里每一个元素的键和值,由于键值必需独一,因此,你会获得跟array_unique()函数一样的功效。

PHP代码:

0,'blue'=>1,'orange'=>2); */ $array = array_flip($array); /* 然后再翻转一次,将键和值从头安排,然后获得数组:array(0=>'green',1=>'blue',2=>'orange'); */ $array = array_flip($array); print_r($array)

运行功效:

green [3] => blue [2] => orange )

由于我们已经移除了一些元素,因此数组看起来不是正常的序列。好比我们也许会获得:array(0=>'A',2=>'B',5=>'C');。在某些环境下,这不是一个题目,可是假如你必要数组的键值保持数字的序列,你可以行使一到两种要领办理键值乱序的题目。

行使array_merge修复数组的keys

添加array_flip之后的函数,将会对数组的键值排序而且让它们规复到正常的序列,如:0,1,2,3…

PHP代码:

运行功效同上

第二种方法,行使array_keys

留意,这种修复数组键值的要领比行使array_merge()函数轻微快了一点。你也可以在最后一步团结行使array_keys()函数(此函数返回翻转后的值)。然后当你翻转数组的值,键值就会按照次序建设。

PHP代码:

运行功效同上

结论

很是简朴,比起在大数组行使array_unique函数,有了一个有用的机能晋升。

PS:本站尚有两款较量简质朴用的在线文本去一再器材,保举给各人行使:

在线去除一再项器材:

在线文本去一再器材:

更多关于PHP相干内容感乐趣的读者可查察本站专题:《》、《》、《》、《》、《》、《》、《》及《》

但愿本文所述对各人PHP措施计划有所辅佐。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读