热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php中array_unique去除二维数组中重复的数组

一个利用php中array_unique实现去除二级数组重复值的方法,array_unique函数只适用于一维数组,对多维数组并不适用,但是我们利用遍历数据然后再进行操作就可以实现array_unique去除重复数组了

一个利用php中array_unique实现去除二级数组重复值的方法,有需要的朋友可参考参考.

实例代码如下:

  1. $input = array(“a” => “green”,”", “red”,”b” => “green”, “”,”blue”, “red”,”c” => “witer”,”hello”,”witer”); 
  2. //$result = array_unique($input); //去除重复元素 
  3. $result = a_array_unique($input);?? //只留下单一元素 
  4. foreach($result as $aa
  5. echo $aa.””; 
  6. function multi_unique($array) { 
  7. foreach ($array as $k=>$na
  8. $new[$k] = serialize($na); 
  9. $uniq = array_unique($new); 
  10. foreach($uniq as $k=>$ser
  11. $new1[$k] = unserialize($ser); 
  12. return ($new1); 
  13. function a_array_unique($array)//写的比较好 
  14. $out = array(); 
  15. foreach ($array as $key=>$value) { 
  16. if (!in_array($value$out)) 
  17. $out[$key] = $value
  18. return $out
  19. ?> 

array_unique函数只适用于一维数组,对多维数组并不适用,但是我们利用遍历数据然后再进行操作就可以实现array_unique去除重复数组了.

实例代码如下:

  1. function unique_arr($array2D,$stkeep=false,$ndformat=true) 
  2. // 判断是否保留一级数组键 (一级数组键可以为非数字) 
  3. if($stkeep$stArr = array_keys($array2D); 
  4. // 判断是否保留二级数组键 (所有二级数组键必须相同) 
  5. if($ndformat$ndArr = array_keys(end($array2D)); 
  6. //降维,也可以用implode,将一维数组转换为用逗号连接的字符串 
  7. foreach ($array2D as $v){ 
  8. $v = join(“,”,$v); 
  9. $temp[] = $v
  10. //去掉重复的字符串,也就是重复的一维数组 
  11. $temp = array_unique($temp); 
  12. //再将拆开的数组重新组装 
  13. foreach ($temp as $k => $v
  14. if($stkeep$k = $stArr[$k]; 
  15. if($ndformat
  16. $tempArr = explode(“,”,$v); 
  17. foreach($tempArr as $ndkey => $ndval$output[$k][$ndArr[$ndkey]] = $ndval
  18. else $output[$k] = explode(“,”,$v); 
  19. return $output
  20. $array2D = array(‘first’=>array(‘title’=>’1111′,’date’=>’2222′),’second’=>array(‘title’=>’1111′,’date’=>’2222′),’third’=>array(‘title’=>’2222′,’date’=>’3333′)); 
  21. print_r($array2D); 
  22. print_r(unique_arr($array2D,true)); 

推荐阅读
  • 本文介绍了数据库体系的基础知识,涵盖关系型数据库(如MySQL)和非关系型数据库(如MongoDB)的基本操作及高级功能。通过三个阶段的学习路径——基础、优化和部署,帮助读者全面掌握数据库的使用和管理。 ... [详细]
  • 本文介绍了如何在多线程环境中实现异步任务的事务控制,确保任务执行的一致性和可靠性。通过使用计数器和异常标记字段,系统能够准确判断所有异步线程的执行结果,并根据结果决定是否回滚或提交事务。 ... [详细]
  • JavaScript 中创建对象的多种方法
    本文详细介绍了 JavaScript 中创建对象的几种常见方式,包括对象字面量、构造函数和 Object.create 方法,并提供了示例代码和属性描述符的解释。 ... [详细]
  • 本文详细介绍了如何在PHP中实现基于概率的随机抽奖功能。通过实例代码,解释了抽奖逻辑、奖品设置及结果统计的方法。适合PHP开发者参考学习。 ... [详细]
  • 本文对宋代词人朱雍的《迷神引》进行翻译和赏析,深入探讨其词作的艺术特色与情感表达。 ... [详细]
  • 本文详细介绍了优化DB2数据库性能的多种方法,涵盖统计信息更新、缓冲池调整、日志缓冲区配置、应用程序堆大小设置、排序堆参数调整、代理程序管理、锁机制优化、活动应用程序限制、页清除程序配置、I/O服务器数量设定以及编入组提交数调整等方面。通过这些技术手段,可以显著提升数据库的运行效率和响应速度。 ... [详细]
  • 利用Selenium与ChromeDriver实现豆瓣网页全屏截图
    本文介绍了一种使用Selenium和ChromeDriver结合Python代码,轻松实现对豆瓣网站进行完整页面截图的方法。该方法不仅简单易行,而且解决了新版Selenium不再支持PhantomJS的问题。 ... [详细]
  • 本文介绍如何使用PHP在WordPress中根据分类类别ID或名称获取所有相关文章,提供详细的方法和代码示例。 ... [详细]
  • 本题来自WC2014,题目编号为BZOJ3435、洛谷P3920和UOJ55。该问题描述了一棵不断生长的带权树及其节点上小精灵之间的友谊关系,要求实时计算每次新增节点后树上所有可能的朋友对数。 ... [详细]
  • 本文详细介绍了如何使用 PHP 接收并处理微信支付的回调结果,确保支付通知能够被正确接收和响应。 ... [详细]
  • 小编给大家分享一下如何移除URL中的index.php,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收 ... [详细]
  • 本文详细介绍了如何在PHP中删除数组中的指定元素、第一个元素和最后一个元素,并提供了具体的代码示例和相关函数的使用说明。 ... [详细]
  • 本文详细解析了汉字‘犐’的基本字义及其在古代文献中的应用,旨在为读者提供全面而深入的理解。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 解决TensorFlow CPU版本安装中的依赖问题
    本文记录了在安装CPU版本的TensorFlow过程中遇到的依赖问题及解决方案,特别是numpy版本不匹配和动态链接库(DLL)错误。通过详细的步骤说明和专业建议,帮助读者顺利安装并使用TensorFlow。 ... [详细]
author-avatar
让生活洒满阳光_622
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有