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


Posted in PHP onJanuary 12, 2017

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

php中二维数组去重操作。例如从数据库中查询出的记录,根据某个键做去重操操作

代码如下:

/**
 * 删除二维数组中相同项的数据,(一般用于数据库查询结果中相同记录的去重操作)
 *
 * @param array $_2d_array 二维数组,类似:
 *     $tmpArr = array(
 *         array('id' => 1, 'value' => '15046f5de5bb708e'),
 *         array('id' => 1, 'value' => '15046f5de5bb708e'),
 *     );
 * @param string $unique_key 表示上述数组的 "id" 键,或者 "value" 键
 *
 * @return mixed
 */
function unique_2d_array_by_key($_2d_array, $unique_key) {
  $tmp_key[] = array();
  foreach ($_2d_array as $key => &$item) {
    if ( is_array($item) && isset($item[$unique_key]) ) {
      if ( in_array($item[$unique_key], $tmp_key) ) {
        unset($_2d_array[$key]);
      } else {
        $tmp_key[] = $item[$unique_key];
      }
    }
  }
  return $_2d_array;
}
//使用示例:
$tmpArr = array(
  array('id' => 1, 'value' => '15046f5de5bb708e'),
  array('id' => 1, 'value' => '15046f5de5bb708e'),
);
print_r(@unique_2d_array_by_key($tmpArr,id));

运行结果:

Array ( [0] => Array ( [id] => 1 [value] => 15046f5de5bb708e ) )

原理:将需要去重的第二维数组中的键保存起来,遍历对比下一组数据,如遇键值相同则删除。

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

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

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

PHP 相关文章推荐
一个取得文件扩展名的函数
Oct 09 PHP
PHP 源代码压缩小工具
Dec 22 PHP
PHP编程过程中需要了解的this,self,parent的区别
Dec 30 PHP
基于magic_quotes_gpc与magic_quotes_runtime的区别与使用介绍
Apr 22 PHP
Linux下php5.4启动脚本
Aug 03 PHP
php中current、next与reset函数用法实例
Nov 17 PHP
php使用正则表达式获取图片url的方法
Jan 16 PHP
cakephp打印sql语句的方法
Feb 13 PHP
WordPress中调试缩略图的相关PHP函数使用解析
Jan 07 PHP
thinkPHP框架自动填充原理与用法分析
Apr 03 PHP
解决laravel id非自增 模型取回为0 的问题
Oct 11 PHP
安装PHP扩展时解压官方 tgz 文件后没有configure文件无法进行配置编译的问题
Aug 26 PHP
PHP生成图片缩略图类示例
Jan 12 #PHP
php+redis实现多台服务器内网存储session并读取示例
Jan 12 #PHP
[原创]PHPCMS遭遇会员投稿审核无效的解决方法
Jan 11 #PHP
YII2 实现多语言配置的方法分享
Jan 11 #PHP
laravel5.2实现区分前后台用户登录的方法
Jan 11 #PHP
PHP全功能无变形图片裁剪操作类与用法示例
Jan 10 #PHP
php实现36进制与10进制转换功能示例
Jan 10 #PHP
You might like
最小化数据传输――在客户端存储数据
2006/10/09 PHP
屏蔽机器人从你的网站搜取email地址的php代码
2012/11/14 PHP
php递归法读取目录及文件的方法
2015/01/30 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
2017/11/16 PHP
利用javascript实现一些常用软件的下载导航
2009/08/03 Javascript
基于jQuery的日期选择控件
2009/10/27 Javascript
jquery 模拟类搜索框自动完成搜索提示功能(改进)
2010/05/24 Javascript
jQuery表单域属性过滤器用法分析
2015/02/10 Javascript
浅谈JavaScript数据类型
2015/03/03 Javascript
jquery-tips悬浮提示插件分享
2015/07/31 Javascript
jquery实现可横向和竖向展开的动态下滑菜单效果
2015/08/24 Javascript
实用jquery操作表单元素的简单代码
2016/07/04 Javascript
vue.js指令v-model实现方法
2016/12/05 Javascript
微信小程序 弹幕功能简单实例
2017/02/14 Javascript
Omi v1.0.2发布正式支持传递javascript表达式
2017/03/21 Javascript
element-ui组件table实现自定义筛选功能的示例代码
2019/03/15 Javascript
python中的lambda表达式用法详解
2016/06/22 Python
python如何派生内置不可变类型并修改实例化行为
2018/03/21 Python
使用sklearn之LabelEncoder将Label标准化的方法
2018/07/11 Python
详解python实现小波变换的一个简单例子
2019/07/18 Python
python pyecharts 实现一个文件绘制多张图
2020/05/13 Python
为您搜罗全球潮流時尚品牌:HBX
2019/12/04 全球购物
美国基督教约会网站:ChristianCafe.com
2020/02/04 全球购物
Aosom西班牙:家具在线商店
2020/06/11 全球购物
中医药大学毕业生自荐信
2013/11/08 职场文书
农民工创业典型事迹
2014/01/25 职场文书
粗加工管理制度
2014/02/04 职场文书
党员一帮一活动总结
2014/07/08 职场文书
家具公司总经理岗位职责
2014/07/08 职场文书
2014年银行员工年终自我评价
2014/09/19 职场文书
2014年党员自我评议对照检查材料
2014/09/20 职场文书
教师四风自我剖析材料
2014/09/30 职场文书
研究生就业推荐表导师评语
2014/12/31 职场文书
综合测评自我评价
2015/03/06 职场文书
python3美化表格数据输出结果的实现代码
2021/04/14 Python
动画电影《龙珠超 超级英雄》延期上映
2022/03/20 日漫