找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1877|回复: 0
打印 上一主题 下一主题

php 数组元素快速去重

[复制链接]

2600

主题

2600

帖子

7736

积分

论坛元老

Rank: 8Rank: 8

积分
7736
跳转到指定楼层
楼主
发表于 2018-2-14 05:26:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            1.使用array_unique方法进行去重
对数组元素进行去重,我们一般会使用array_unique方法,使用这个方法可以把数组中的元素去重。
输出:
Array
(
  [0] => 1
  [1] => 2
  [2] => 3
  [3] => 4
  [4] => 5
  [5] => 6
  [6] => 7
  [7] => 8
  [8] => 9
)
去重后,键值会不按顺序,可以使用array_values把键值重新排序。
2.使用array_unique方法去重效率
unique count:99
run time:653.39303016663ms
use memory:5120kb
使用array_unique方法去重,运行时间需要约650ms,内存占用约5m
3.更快的数组去重方法
PHP有一个键值互换的方法array_flip,我们可以使用这个方法去重,因为键值互换,原来重复的值会变为相同的键。
然后再进行一次键值互换,把键和值换回来则可以完成去重。
unique count:99
run time:12.840032577515ms
use memory:768kb
使用array_flip方法去重,运行时间需要约18ms,内存占用约2m
因此使用array_flip方法去重比使用array_unique方法运行时间减少98%,内存占用减少4/5;
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!
            
            
您可能感兴趣的文章:
  • PHP二维数组的去重问题解析
  • php数组去重的函数代码
  • php三维数组去重(示例代码)
  • php数组去重实例及分析
  • php数组去重复数据示例
  • php冒泡排序、快速排序、快速查找、二维数组去重实例分享
  • php二维数组合并及去重复的方法
  • PHP数组去重比较快的实现方式
  • PHP的数组中提高元素查找与元素去重的效率的技巧解析
  • PHP二维数组去重算法
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端