PHP实现一维数组与二维数组去重功能示例


Posted in PHP onMay 24, 2018

本文实例讲述了PHP实现一维数组与二维数组去重功能。分享给大家供大家参考,具体如下:

数组中重复项的去除

一维数组的重复项:

使用array_unique函数即可,使用实例如下:

<?php
  $aa=array("1","2","3","3","2","watermalon");
  $bb=array_unique($aa);
  print_r($bb);
?>

结果如下:

Array ( [0] => 1 [1] => 2 [2] => 3 [5] => watermalon )

二维数组的重复项:

对于二维数组咱们分两种情况讨论,一种是因为某一键名的值不能重复,删除重复项;另一种因为内部的一维数组不能完全相同,而删除重复项,下面举例说明:

因为某一键名的值不能重复,删除重复项

<?php
function assoc_unique($arr, $key)
{
  $tmp_arr = array();
  foreach($arr as $k => $v)
  {
    if(in_array($v[$key], $tmp_arr))//搜索$v[$key]是否在$tmp_arr数组中存在,若存在返回true
    {
     unset($arr[$k]);
    }
    else {
     $tmp_arr[] = $v[$key];
    }
  }
  sort($arr); //sort函数对数组进行排序
  return $arr;
}
$aa = array(
  array('shopId' => 1),
  array('shopId' => 1),
  array('shopId' => 2),
  array('shopId' => 2)
);
$key = 'id';
$result = assoc_unique($aa, $key);
print_r($result);
?>

显示结果为:

Array ( [0] => Array ( [shopId] => 1 ) [1] => Array ( [shopId] => 2 ))

PS:本站还有两款比较简单实用的在线文本去重复工具,推荐给大家使用:

在线去除重复项工具:
http://tools.3water.com/code/quchong

在线文本去重复工具:
http://tools.3water.com/aideddesign/txt_quchong

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
如何开发一个虚拟域名系统
Oct 09 PHP
php print EOF实现方法
May 21 PHP
解析在PHP中使用全局变量的几种方法
Jun 24 PHP
ini_set的用法介绍
Jan 07 PHP
Yii操作数据库的3种方法
Mar 11 PHP
php获取随机数组列表的方法
Nov 13 PHP
Yii2中cookie用法示例分析
Jul 18 PHP
PHP 中 DOMDocument保存xml时中文出现乱码问题的解决方案
Sep 19 PHP
yii2.0整合阿里云oss的示例代码
Sep 19 PHP
Yii2处理密码加密及验证的方法
May 12 PHP
PHP命名空间与自动加载机制的基础介绍
Aug 25 PHP
Laravel框架集合用法实例浅析
May 14 PHP
CI框架(CodeIgniter)实现的数据库增删改查操作总结
May 23 #PHP
yii2安装详细流程
May 23 #PHP
PHP仿tp实现mvc框架基本设计思路与实现方法分析
May 23 #PHP
PHP自定义函数实现assign()数组分配到模板及extract()变量分配到模板功能示例
May 23 #PHP
PHP工厂模式简单实现方法示例
May 23 #PHP
PHP递归遍历文件夹去除注释并压缩php源代码的方法示例
May 23 #PHP
PHP实现将多个文件压缩成zip格式并下载到本地的方法示例
May 23 #PHP
You might like
destoon实现首页显示供应、企业、资讯条数的方法
2014/07/15 PHP
ThinkPHP实现支付宝接口功能实例
2014/12/02 PHP
php实现按指定大小等比缩放生成上传图片缩略图的方法
2014/12/15 PHP
Symfony页面的基本创建实例详解
2015/01/26 PHP
thinkPHP5 tablib标签库自定义方法详解
2017/05/10 PHP
PHPExcel中文帮助手册|PHPExcel使用方法(分享)
2017/06/09 PHP
jquery 操作日期、星期、元素的追加的实现代码
2012/02/07 Javascript
用函数模板,写一个简单高效的 JSON 查询器的方法介绍
2013/04/17 Javascript
JQuery AJAX 中文乱码问题解决
2013/06/05 Javascript
使用JQuery库提供的扩展功能实现自定义方法
2014/09/09 Javascript
Bootstrap布局之栅格系统详解
2016/06/13 Javascript
JS常用加密编码与算法实例总结
2016/12/22 Javascript
详解使用angular的HttpClient搭配rxjs
2017/09/01 Javascript
微信小程序scroll-view组件实现滚动动画
2018/01/31 Javascript
浅谈ElementUI中switch回调函数change的参数问题
2018/08/24 Javascript
JS实现数组去重,显示重复元素及个数的方法示例
2019/01/21 Javascript
vue 中的 render 函数作用详解
2020/02/28 Javascript
详解vue父子组件状态同步的最佳方式
2020/09/10 Javascript
js实现日历
2020/11/07 Javascript
[02:56]DOTA2矮人直升机 英雄基础教程
2013/11/26 DOTA
[01:20]2018DOTA2亚洲邀请赛总决赛战队LGD晋级之路
2018/04/07 DOTA
[32:17]完美世界DOTA2联赛循环赛LBZS vs Forest第二场 10月30日
2020/10/31 DOTA
python中getattr函数使用方法 getattr实现工厂模式
2014/01/20 Python
python定时器(Timer)用法简单实例
2015/06/04 Python
Python爬虫代理IP池实现方法
2017/01/05 Python
pycharm中连接mysql数据库的步骤详解
2017/05/02 Python
python处理大日志文件
2019/07/23 Python
详解CSS3中强大的filter(滤镜)属性
2017/06/29 HTML / CSS
JD Sports瑞典:英国领先的运动时尚商店
2018/01/28 全球购物
纽约手袋品牌:KARA
2018/03/18 全球购物
一些Unix笔试题和面试题
2012/09/25 面试题
参观监狱心得体会
2014/01/02 职场文书
2014庆六一活动方案
2014/03/02 职场文书
放飞梦想演讲稿200字
2014/08/26 职场文书
Jackson 反序列化时实现大小写不敏感设置
2021/06/29 Java/Android
Android中的Launch Mode详情
2022/06/05 Java/Android