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+MYSQL的文章管理系统(一)
Oct 09 PHP
用缓存实现静态页面的测试
Dec 06 PHP
php之对抗Web扫描器的脚本技巧
Oct 01 PHP
php安装xdebug/php安装pear/phpunit详解步骤(图)
Dec 22 PHP
php递归获取目录内文件(包含子目录)封装类分享
Dec 25 PHP
PHP mail()函数使用及配置方法
Jan 14 PHP
php动态生成函数示例
Mar 21 PHP
PHP不用递归实现无限分级的例子分享
Apr 18 PHP
50个PHP程序性能优化的方法
Jun 02 PHP
PHP超全局数组(Superglobals)介绍
Jul 01 PHP
深入解析PHP的Laravel框架中的event事件操作
Mar 21 PHP
php多进程并发编程防止出现僵尸进程的方法分析
Feb 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
PHP5中MVC结构学习
2006/10/09 PHP
MYSQL数据库初学者使用指南
2006/11/16 PHP
弄了个检测传输的参数是否为数字的Function
2006/12/06 PHP
用PHP进行MySQL删除记录操作代码
2008/06/07 PHP
php常用表单验证类用法实例
2015/06/18 PHP
解析WordPress中函数钩子hook的作用及基本用法
2015/12/22 PHP
PHPStrom 新建FTP项目以及在线操作教程
2016/10/16 PHP
原生js获取宽高与jquery获取宽高的方法关系对比
2014/04/04 Javascript
JavaScript中的typeof操作符用法实例
2014/04/05 Javascript
js限制文本框只能输入数字方法小结
2014/06/16 Javascript
js实现禁止中文输入的方法
2015/01/14 Javascript
javascript获取重复次数最多的字符
2015/07/08 Javascript
举例讲解JavaScript中将数组元素转换为字符串的方法
2015/10/25 Javascript
浅析Javascript匿名函数与自执行函数
2016/02/06 Javascript
全面详细的jQuery常见开发技巧手册
2016/02/21 Javascript
JavaScript 继承详解(六)
2016/10/11 Javascript
Javascript之深入浅出prototype
2017/02/06 Javascript
jQuery实现单击按钮遮罩弹出对话框效果(1)
2017/02/20 Javascript
Vue.js如何优雅的进行form validation
2017/04/07 Javascript
jQuery 实现鼠标画框并对框内数据选中的实例代码
2017/08/29 jQuery
JS实现图片拖拽交换效果
2018/11/30 Javascript
jquery将json转为数据字典的实例代码
2019/10/11 jQuery
JS操作json对象key、value的常用方法分析
2019/10/29 Javascript
python追加元素到列表的方法
2015/07/28 Python
python实现简单socket通信的方法
2016/04/19 Python
Python简单网络编程示例【客户端与服务端】
2017/05/26 Python
PyQt5主窗口动态加载Widget实例代码
2018/02/07 Python
Python3解释器知识点总结
2019/02/19 Python
如何通过python实现全排列
2020/02/11 Python
Python GUI之tkinter窗口视窗教程大集合(推荐)
2020/10/20 Python
平面设计自荐信
2013/10/07 职场文书
国庆节促销广告语2014
2014/09/19 职场文书
医务人员岗前培训心得体会
2016/01/08 职场文书
Python一些基本的图像操作和处理总结
2021/06/23 Python
JavaScript实现外溢动态爱心的效果的示例代码
2022/03/21 Javascript
vue中控制mock在开发环境使用,在生产环境禁用方式
2022/04/06 Vue.js