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 相关文章推荐
PHP+DBM的同学录程序(1)
Oct 09 PHP
在数据量大(超过10万)的情况下
Jan 15 PHP
phpinfo 系统查看参数函数代码
Jun 05 PHP
php MYSQL 数据备份类
Jun 19 PHP
PHP遍历数组的几种方法
Mar 22 PHP
php+mysqli预处理技术实现添加、修改及删除多条数据的方法
Jan 30 PHP
php判断两个日期之间相差多少个月份的方法
Jun 18 PHP
5款适合PHP使用的HTML编辑器推荐
Jul 03 PHP
Thinkphp框架开发移动端接口(1)
Aug 18 PHP
php字符集转换
Jan 23 PHP
基于PHP实现用户登录注册功能的详细教程
Aug 04 PHP
PHP tp5中使用原生sql查询代码实例
Oct 28 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
php使用GD库创建图片缩略图的方法
2015/06/10 PHP
PHP比较运算符的详细介绍
2015/09/29 PHP
php基于curl主动推送最新内容给百度收录的方法
2016/10/14 PHP
PHP实现文件上传操作和封装
2020/03/04 PHP
基于jquery的仿百度的鼠标移入图片抖动效果
2010/09/17 Javascript
js 金额文本框实现代码
2012/02/14 Javascript
使用Java实现简单的server/client回显功能的方法介绍
2013/05/03 Javascript
Jquery跳到页面指定位置的方法
2014/05/12 Javascript
浅谈$(document)和$(window)的区别
2015/07/15 Javascript
js css实现垂直方向自适应的三角提示菜单
2016/06/26 Javascript
Bootstrap 布局组件(全)
2016/07/18 Javascript
JavaScript中Array的实用操作技巧分享
2016/09/11 Javascript
javascript 组合按键事件监听实现代码
2017/02/21 Javascript
Vue.js中兄弟组件之间互相传值实例
2017/06/01 Javascript
vue v-model动态生成详解
2018/06/30 Javascript
详解VUE项目中安装和使用vant组件
2019/04/28 Javascript
Node.js一行代码实现静态文件服务器的方法步骤
2019/05/07 Javascript
Vite和Vue CLI的优劣
2021/01/30 Vue.js
python抓取网页中的图片示例
2014/02/28 Python
python2.7无法使用pip的解决方法(安装easy_install)
2018/04/03 Python
在python Numpy中求向量和矩阵的范数实例
2019/08/26 Python
浅谈keras 模型用于预测时的注意事项
2020/06/27 Python
Python使用文件操作实现一个XX信息管理系统的示例
2020/07/02 Python
基于OpenCV的网络实时视频流传输的实现
2020/11/15 Python
python多线程和多进程关系详解
2020/12/14 Python
Banana Republic英国官网:香蕉共和国,GAP集团旗下偏贵族风
2018/04/24 全球购物
牦牛毛户外探险服装:Kora
2019/02/08 全球购物
Intersport西班牙:在线体育商店
2019/11/06 全球购物
PHP面试题及答案二
2015/05/23 面试题
少年闰土教学反思
2014/02/22 职场文书
2014年团队工作总结
2014/11/24 职场文书
刑事附带民事起诉状
2015/05/19 职场文书
2015年社区重阳节活动总结
2015/07/30 职场文书
【海涛DOTA】D-cup邀请赛NV.cn vs DT.Love
2022/04/01 DOTA
如何通过简单的代码描述Angular父组件、子组件传值
2022/04/07 Javascript
使用Cargo工具高效创建Rust项目
2022/08/14 Javascript