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 相关文章推荐
PHP-CGI进程CPU 100% 与 file_get_contents 函数的关系分析
Aug 15 PHP
PHP排序算法的复习和总结
Feb 15 PHP
非常实用的PHP常用函数汇总
Dec 17 PHP
ThinkPHP通过AJAX返回JSON的两种实现方法
Dec 18 PHP
php从数组中随机选择若干不重复元素的方法
Mar 14 PHP
PHP中4种常用的抓取网络数据方法
Jun 04 PHP
学习php设计模式 php实现抽象工厂模式
Dec 07 PHP
全新Mac配置PHP开发环境教程
Feb 03 PHP
php版微信发红包接口用法示例
Sep 23 PHP
php实现支付宝当面付(扫码支付)功能
May 30 PHP
tp5实现微信小程序多图片上传到服务器功能
Jul 16 PHP
PHP实现获取url地址中顶级域名的方法示例
Jun 05 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 Mysql编程之高级技巧
2008/08/27 PHP
WordPress中给文章添加自定义字段及后台编辑功能区域
2015/12/19 PHP
javascript 读取图片文件的大小
2009/06/25 Javascript
Javascript 类、命名空间、代码组织代码
2011/07/31 Javascript
JavaScript中把数字转换为字符串的程序代码
2013/06/19 Javascript
javascript检查浏览器是否支持flash的实现代码
2014/08/14 Javascript
微信小程序 数据访问实例详解
2016/10/08 Javascript
jQuery ajax 当async为false时解决同步操作失败的问题
2016/11/18 Javascript
微信小程序之多列表的显示和隐藏功能【附源码】
2018/08/06 Javascript
使用vue-cli脚手架工具搭建vue-webpack项目
2019/01/14 Javascript
VUE前后端学习tab写法实例
2019/08/06 Javascript
[03:06]2018年度CS GO最具人气解说-完美盛典
2018/12/16 DOTA
python线程池的实现实例
2013/11/18 Python
在Python中使用pngquant压缩png图片的教程
2015/04/09 Python
Python中模块与包有相同名字的处理方法
2017/05/05 Python
Python3 操作符重载方法示例
2017/11/23 Python
Python爬虫的两套解析方法和四种爬虫实现过程
2018/07/20 Python
python3 读取Excel表格中的数据
2018/10/16 Python
python实现多进程代码示例
2018/10/31 Python
在python中pandas读文件,有中文字符的方法
2018/12/12 Python
NumPy 基本切片和索引的具体使用方法
2019/04/24 Python
Django自带日志 settings.py文件配置方法
2019/08/30 Python
centos7中安装python3.6.4的教程
2019/12/11 Python
python如何解析复杂sql,实现数据库和表的提取的实例剖析
2020/05/15 Python
Pycharm学生免费专业版安装教程的方法步骤
2020/09/24 Python
纯HTML+CSS3制作导航菜单(附源码)
2013/04/24 HTML / CSS
西班牙香水和化妆品网上商店:Douglas
2017/10/29 全球购物
皮姆斯勒语言学习:Pimsleur Language Programs
2018/06/30 全球购物
管理学专业个人求职信范文
2013/12/13 职场文书
党员教师一句话承诺
2014/05/30 职场文书
学生保证书
2015/01/16 职场文书
客房服务员岗位职责
2015/02/09 职场文书
毕业生就业推荐表自我评价
2015/03/02 职场文书
检讨书怎么写
2015/05/07 职场文书
公司会议开幕词
2016/03/03 职场文书
python字符串常规操作大全
2021/05/02 Python