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.MVC的模板标签系统(三)
Sep 05 PHP
php mysql 判断update之后是否更新了的方法
Jan 10 PHP
Php Ctemplate引擎开发相关内容
Mar 03 PHP
PHP utf-8编码问题,utf8编码,数据库乱码,页面显示输出乱码
Apr 08 PHP
深入PHP变量存储的详解
Jun 13 PHP
浅析HTTP消息头网页缓存控制以及header常用指令介绍
Jun 28 PHP
JoshChen_web格式编码UTF8-无BOM的小细节分析
Aug 16 PHP
使用php方法curl抓取AJAX异步内容思路分析及代码分享
Aug 25 PHP
PHP实现小偷程序实例
Oct 31 PHP
利用PHP访问MySql数据库的逻辑操作以及增删改查的实例讲解
Aug 30 PHP
PHP实现唤起微信支付功能
Feb 18 PHP
php计数排序算法的实现代码(附四个实例代码)
Mar 31 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
[FAQ]PHP中的一些常识:类篇
2006/10/09 PHP
常用的php对象类型判断
2008/08/27 PHP
PHP 字符串 小常识
2009/06/05 PHP
PHP生成plist数据的方法
2015/06/16 PHP
Yii2框架实现注册和登录教程
2016/09/30 PHP
微信公众号开发之获取位置信息php代码
2018/06/13 PHP
TP5.0框架实现无限极回复功能的方法分析
2019/05/04 PHP
TP5(thinkPHP5框架)实现显示错误信息及行号功能的方法
2019/06/03 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
2019/11/25 PHP
JavaScript 计算当天是本年本月的第几周
2009/03/22 Javascript
修改jquery.lazyload.js实现页面延迟载入
2010/12/22 Javascript
关于jquery性能最佳实践的讨论,与求教
2012/03/30 Javascript
jQuery extend 的简单实例
2013/09/18 Javascript
zepto与jquery的区别及zepto的不同使用8条小结
2016/07/28 Javascript
JavaScript实现邮箱地址自动匹配功能代码
2016/11/28 Javascript
Bootstrap导航条学习使用(二)
2017/02/08 Javascript
JavaScript获取URL参数的方法之一
2017/03/24 Javascript
AngularJS封装$http.post()实例详解
2017/05/06 Javascript
angularjs中$http异步上传Excel文件方法
2018/02/23 Javascript
在Vue组件中获取全局的点击事件方法
2018/09/06 Javascript
ES6基础之 Promise 对象用法实例详解
2019/08/22 Javascript
解决Vue项目打包后打开index.html页面显示空白以及图片路径错误的问题
2019/10/25 Javascript
[01:18]PWL开团时刻DAY4——圣剑与抢盾
2020/11/03 DOTA
Python写的一个简单DNS服务器实例
2014/06/04 Python
举例讲解Python设计模式编程中对抽象工厂模式的运用
2016/03/02 Python
python批量导入数据进Elasticsearch的实例
2018/05/30 Python
解决pyecharts运行后产生的html文件用浏览器打开空白
2020/03/11 Python
jupyter notebook 使用过程中python莫名崩溃的原因及解决方式
2020/04/10 Python
详解通过focusout事件解决IOS键盘收起时界面不归位的问题
2019/07/18 HTML / CSS
Swanson中国官网:美国斯旺森健康产品公司
2021/03/01 全球购物
在Java开发中如何选择使用哪种集合类
2016/08/09 面试题
国贸专业的职业规划书
2014/03/15 职场文书
倡议书范文大全
2015/04/28 职场文书
2016年秋季开学典礼新闻稿
2015/11/25 职场文书
创业计划书之淘宝网店
2019/10/08 职场文书
python3实现Dijkstra算法最短路径的实现
2021/05/12 Python