php去除二维数组的重复项方法


Posted in PHP onNovember 03, 2015

php中去一维数组的重复项可以通过php内置函数array_unique(),但是php的array_unique函数对多维数组并不适用,怎么才能去除二维数组中的重复项呢?

以下给大家提供一个函数。

//二维数组去掉重复值
function unique_arr($array2D,$stkeep=false,$ndformat=true){
  $joinstr='+++++';
  // 判断是否保留一级数组键 (一级数组键可以为非数字)
  if($stkeep) $stArr = array_keys($array2D);
  // 判断是否保留二级数组键 (所有二级数组键必须相同)
  if($ndformat) $ndArr = array_keys(end($array2D));
  //降维,也可以用implode,将一维数组转换为用逗号连接的字符串
  foreach ($array2D as $v){
    $v = join($joinstr,$v);
    $temp[] = $v;
  }
  //去掉重复的字符串,也就是重复的一维数组
  $temp = array_unique($temp);
  //再将拆开的数组重新组装
  foreach ($temp as $k => $v){
    if($stkeep) $k = $stArr[$k];
    if($ndformat){
      $tempArr = explode($joinstr,$v);
      foreach($tempArr as $ndkey => $ndval) $output[$k][$ndArr[$ndkey]] = $ndval;
    }
    else $output[$k] = explode($joinstr,$v);
  }
  return $output;
}

希望对大家学习php程序设计有所帮助。

PHP 相关文章推荐
相对路径转化成绝对路径
Apr 10 PHP
php 修改zen-cart下单和付款流程以防止漏单
Mar 08 PHP
PHP STRING 陷阱原理说明
Jul 24 PHP
php数组的概述及分类与声明代码演示
Feb 26 PHP
php类常量的使用详解
Jun 08 PHP
php解压文件代码实现php在线解压
Feb 13 PHP
PHP生成迅雷、快车、旋风等软件的下载链接代码实例
May 12 PHP
PHP实现生成唯一编号(36进制的不重复编号)
Jul 01 PHP
destoon实现调用图文新闻的方法
Aug 21 PHP
Smarty中常用变量操作符汇总
Oct 27 PHP
PHP匿名函数和use子句用法实例
Mar 16 PHP
thinkPHP5分页功能实现方法分析
Oct 25 PHP
php在数据库抽象层简单使用PDO的方法
Nov 03 #PHP
smarty简单应用实例
Nov 03 #PHP
详解PHP+AJAX无刷新分页实现方法
Nov 03 #PHP
php获取远程文件的内容和大小
Nov 03 #PHP
php获取远程文件内容的函数
Nov 02 #PHP
php+ajax实现无刷新数据分页的办法
Nov 02 #PHP
PHP中Http协议post请求参数
Nov 02 #PHP
You might like
PHP strtr() 函数使用说明
2008/11/21 PHP
我的php学习笔记(毕业设计)
2012/02/21 PHP
定义php常量的详解
2013/06/09 PHP
Fatal error: session_start(): Failed to initialize storage module: files问题解决方法
2014/05/04 PHP
php5.4以下版本json不支持不转义内容中文的解决方法
2015/01/13 PHP
php 静态属性和静态方法区别详解
2017/04/09 PHP
php两点地理坐标距离的计算方法
2018/12/29 PHP
用javascript实现无刷新更新数据的详细步骤 asp
2006/12/26 Javascript
document.open() 与 document.write()的区别
2007/08/13 Javascript
javascript制作坦克大战全纪录(2)
2014/11/27 Javascript
javascript数组去重方法汇总
2015/04/23 Javascript
[原创]JS基于FileSaver.js插件实现文件保存功能示例
2016/12/08 Javascript
Bootstrap CSS组件之下拉菜单(dropdown)
2016/12/17 Javascript
jQuery实现贪吃蛇小游戏(附源码下载)
2017/03/04 Javascript
JavaScript获取URL参数的方法之一
2017/03/24 Javascript
详解使用Node.js 将txt文件转为Excel文件
2017/07/05 Javascript
jQuery中可见性过滤器简单用法示例
2018/03/31 jQuery
vue实现Excel文件的上传与下载功能的两种方式
2019/06/28 Javascript
关于layui 弹出层一闪而过就消失的解决方法
2019/09/09 Javascript
js实现GIF图片的分解和合成
2019/10/24 Javascript
Python中time模块和datetime模块的用法示例
2016/02/28 Python
python版飞机大战代码分享
2018/11/20 Python
tensor和numpy的互相转换的实现示例
2019/08/02 Python
Python Process多进程实现过程
2019/10/22 Python
用Python开发app后端有优势吗
2020/06/29 Python
python opencv实现简易画图板
2020/08/27 Python
Python从MySQL数据库中面抽取试题,生成试卷
2021/01/14 Python
出差报告范文
2014/11/06 职场文书
2014年教育工作总结
2014/11/26 职场文书
死亡赔偿协议书
2015/01/28 职场文书
个人简历求职信范文
2015/03/20 职场文书
工程竣工验收申请报告
2015/05/15 职场文书
干部考核工作总结2015
2015/07/24 职场文书
婚礼伴郎致辞
2015/07/28 职场文书
Java基础之线程锁相关知识总结
2021/06/30 Java/Android
ElementUI实现el-form表单重置功能按钮
2021/07/21 Javascript