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 相关文章推荐
在线增减.htpasswd内的用户
Oct 09 PHP
php预定义常量
Dec 25 PHP
PHP加速 eAccelerator配置和使用指南
Jun 05 PHP
php 在文件指定行插入数据的代码
May 08 PHP
由php的call_user_func传reference引发的思考
Jul 23 PHP
PHP 时间日期操作实战
Aug 26 PHP
Array of country list in PHP with Zend Framework
Oct 17 PHP
PHP清除字符串中所有无用标签的方法
Dec 01 PHP
php读取csv文件并输出的方法
Mar 14 PHP
php准确计算复活节日期的方法
Apr 18 PHP
phpcms实现验证码替换及phpcms实现全站搜索功能教程详解
Dec 13 PHP
Yii框架参数配置文件params用法实例分析
Sep 11 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实现的XML操作(读取)封装类完整实例
2017/02/23 PHP
PHP 使用二进制保存用户状态的实例
2018/01/29 PHP
thinkPHP框架实现的无限回复评论功能示例
2018/06/09 PHP
PHP实现redis限制单ip、单用户的访问次数功能示例
2018/06/16 PHP
PHP 数组操作详解【遍历、指针、函数等】
2020/05/13 PHP
Javascript 网页水印(非图片水印)实现代码
2010/03/01 Javascript
Javascript事件实例详解
2013/11/06 Javascript
JavaScript数据结构和算法之图和图算法
2015/02/11 Javascript
Angular之指令Directive用法详解
2017/03/01 Javascript
详解vue组件化开发-vuex状态管理库
2017/04/10 Javascript
AngularJS中的promise用法分析
2017/05/19 Javascript
浅谈Angular文字折叠展开组件的原理分析
2017/11/24 Javascript
vue2中使用less简易教程
2018/03/27 Javascript
jQuery实现的监听导航滚动置顶状态功能示例
2018/07/23 jQuery
微信小程序性能优化之checkSession的使用
2019/03/06 Javascript
一文看懂如何简单实现节流函数和防抖函数
2019/09/05 Javascript
[03:42]2018完美盛典-《加冕》
2018/12/16 DOTA
Python天气预报采集器实现代码(网页爬虫)
2012/10/07 Python
python中urllib模块用法实例详解
2014/11/19 Python
python实现FTP服务器服务的方法
2017/04/11 Python
Django框架实现的简单分页功能示例
2018/12/04 Python
python 实现一次性在文件中写入多行的方法
2019/01/28 Python
Django模板导入母版继承和自定义返回Html片段过程解析
2019/09/18 Python
python tkinter图形界面代码统计工具(更新)
2019/09/18 Python
python3.7 利用函数os pandas利用excel对文件名进行归类
2019/09/29 Python
python 实现一个反向单位矩阵示例
2019/11/29 Python
ITK 实现多张图像转成单个nii.gz或mha文件案例
2020/07/01 Python
解决pytorch 模型复制的一些问题
2021/03/03 Python
css3 pointer-events 介绍详解
2017/09/18 HTML / CSS
求职简历的自我评价怎样写好
2013/10/07 职场文书
大学生社团活动总结
2014/04/26 职场文书
乡镇平安建设汇报材料
2014/08/25 职场文书
银行开户授权委托书格式
2014/10/10 职场文书
开发一个封装iframe的vue组件
2021/03/29 Vue.js
浅析JavaScript中的变量提升
2022/06/01 Javascript
MySQL下载安装配置详细教程 附下载资源
2022/09/23 MySQL