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 数组遍历的差异(array_diff 的实现)
Mar 23 PHP
php 文件上传后缀名与文件类型对照表(几乎涵盖所有文件)
May 16 PHP
PHP开发中常用的字符串操作函数
Feb 08 PHP
使用PHP实现二分查找算法代码分享
Jun 24 PHP
php把session写入数据库示例
Feb 26 PHP
php smarty truncate UTF8乱码问题解决办法
Jun 13 PHP
Laravel路由设定和子路由设定实例分析
Mar 30 PHP
thinkphp3.x自定义Action、Model及View的简单实现方法
May 19 PHP
php JWT在web端中的使用方法教程
Sep 06 PHP
解决PHP使用CURL发送GET请求时传递参数的问题
Oct 11 PHP
Laravel 实现在Blade模版中使用全局变量代替路径的例子
Oct 22 PHP
ThinkPHP5.1的权限控制怎么写?分享一个AUTH权限控制
Mar 09 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
便携利器 — TECSUN PL-365简评
2021/03/02 无线电
CURL的学习和应用(附多线程实现)
2013/06/03 PHP
php实现cc攻击防御和防止快速刷新页面示例
2014/02/13 PHP
php图像处理函数imagecopyresampled用法详解
2016/12/02 PHP
jQuery中文入门指南,翻译加实例,jQuery的起点教程
2007/01/13 Javascript
权威JavaScript 中的内存泄露模式
2007/08/13 Javascript
Javascript中自动切换焦点实现代码
2012/12/15 Javascript
改变隐藏的input中value值的方法
2014/03/19 Javascript
实现checkbox全选、反选、取消JavaScript小脚本异常
2014/04/10 Javascript
jQuery+ajax实现实用的点赞插件代码
2016/07/06 Javascript
jquery动态遍历Json对象的属性和值的方法
2016/07/27 Javascript
详解打造 Vue.js 可复用组件
2017/03/24 Javascript
Popup弹出框添加数据实现方法
2017/10/27 Javascript
在create-react-app中使用css modules的示例代码
2018/07/31 Javascript
js canvas实现5张图片合成一张图片
2019/07/15 Javascript
vue实现购物车小案例
2019/09/27 Javascript
JS如何调用WebAssembly编译出来的.wasm文件
2020/11/05 Javascript
vue调用微信JSDK 扫一扫,相册等需要注意的事项
2021/01/03 Vue.js
[03:48]2014DOTA2 TI专访71DK夺冠不靠小组赛高排名
2014/07/11 DOTA
推荐下python/ironpython:从入门到精通
2007/10/02 Python
python使用cookielib库示例分享
2014/03/03 Python
Python显示进度条的方法
2014/09/20 Python
python实现的简单文本类游戏实例
2015/04/28 Python
python 捕获shell脚本的输出结果实例
2017/01/04 Python
MAC中PyCharm设置python3解释器
2017/12/15 Python
用python3 返回鼠标位置的实现方法(带界面)
2019/07/05 Python
Python List列表对象内置方法实例详解
2019/10/22 Python
Python中sys模块功能与用法实例详解
2020/02/26 Python
python/golang 删除链表中的元素
2020/09/14 Python
总经理秘书岗位职责
2014/03/17 职场文书
竞选大队委员演讲稿
2014/04/28 职场文书
社区学习党的群众路线教育实践活动心得体会
2014/11/03 职场文书
2016优秀护士求职自荐信
2016/01/28 职场文书
2019年第四季度财务部门工作计划
2019/11/02 职场文书
详解PyTorch模型保存与加载
2022/04/28 Python
Meta增速拉垮,元宇宙难当重任
2022/04/29 数码科技