PHP二维数组去重实例分析


Posted in PHP onNovember 18, 2016

本文实例分析了PHP二维数组去重的方法。分享给大家供大家参考,具体如下:

都知道一维数组去重用系统函数 array_unique($arr)

然后今天我用到二维数组了,也想去重,百度一大堆,都是将二维转一维 然后使用array_unique($arr)

看得我很恼火,所以决定自己写一个。比他的简单好懂,记录下来,以备后用

header('content-type:text/html;charset=utf8');
$arr = array(
array('id'=>1,'psid'=>'P101','fullname'=>'课程计划全称 101','userid'=>4),
array('id'=>1,'psid'=>'P101','fullname'=>'课程计划全称 101','userid'=>3),
array('id'=>1,'psid'=>'P101','fullname'=>'课程计划全称 101','userid'=>3),
array('id'=>1,'psid'=>'P101','fullname'=>'课程计划全称 101','userid'=>2),
array('id'=>2,'psid'=>'P102','fullname'=>'新课程计划','userid'=>4),
array('id'=>2,'psid'=>'P102','fullname'=>'新课程计划','userid'=>3),
array('id'=>2,'psid'=>'P102','fullname'=>'新课程计划','userid'=>3),
array('id'=>2,'psid'=>'P102','fullname'=>'新课程计划','userid'=>2)
);
$arr = er_array_unique($arr);
foreach($arr as $v){
  echo 'id: '.$v['id'].'psid: '.$v['psid'].' fullname: '.$v['fullname'].' userid: '.$v['userid'].'<br/>';
}
//二维数组简单去重
function er_array_unique($arr){
  $newarr = array();
  if(is_array($arr)){
    foreach($arr as $v){
      if(!in_array($v,$newarr,true)){
        $newarr[] = $v;
      }
    }
  }else{
     return false;
  }
  return $newarr;
}

打印结果:

id: 1psid: P101 fullname: 课程计划全称 101 userid: 4
id: 1psid: P101 fullname: 课程计划全称 101 userid: 3
id: 1psid: P101 fullname: 课程计划全称 101 userid: 2
id: 2psid: P102 fullname: 新课程计划 userid: 4
id: 2psid: P102 fullname: 新课程计划 userid: 3
id: 2psid: P102 fullname: 新课程计划 userid: 2

注意:此方法中的  in_array($need,$arr,$strict)

在 PHP 版本 4.2.0 之前,$need 不允许是一个数组。$stric 为 true 会严格去匹配 $need 和 $arr 中待查找的类型

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

PHP 相关文章推荐
php比较多维数组中值的大小排序实现代码
Sep 08 PHP
解析阿里云ubuntu12.04环境下配置Apache+PHP+PHPmyadmin+MYsql
Jun 26 PHP
php采用curl模仿登录人人网发布动态的方法
Nov 07 PHP
PHP中strtr字符串替换用法详解
Nov 26 PHP
php自动给网址加上链接的方法
Jun 02 PHP
6个超实用的PHP代码片段
Aug 10 PHP
优化WordPress的Google字体以加速国内服务器上的运行
Nov 24 PHP
Yii中创建自己的Widget实例
Jan 05 PHP
PHP session会话操作技巧小结
Sep 27 PHP
PHP微信模板消息操作示例
Jun 29 PHP
php+ajax实现仿百度查询下拉内容功能示例
Oct 20 PHP
Yii2框架视图(View)操作及Layout的使用方法分析
May 27 PHP
浅谈php fopen下载远程文件的函数
Nov 18 #PHP
PHP实现的自定义数组排序函数与排序类示例
Nov 18 #PHP
php array_walk 对数组中的每个元素应用用户自定义函数详解
Nov 18 #PHP
PHP屏蔽关键字实现方法
Nov 17 #PHP
php实现背景图上添加圆形logo图标的方法
Nov 17 #PHP
PHP解压ZIP文件到指定文件夹的方法
Nov 17 #PHP
PHP版单点登陆实现方案的实例
Nov 17 #PHP
You might like
玩转虚拟域名◎+ .
2006/10/09 PHP
详解PHP中的PDO类
2015/07/06 PHP
Laravel 不同生产环境服务器的判断实践
2019/10/15 PHP
动态加载js、css等文件跨iframe实现
2014/02/24 Javascript
PHP使用方法重载实现动态创建属性的get和set方法
2014/11/17 Javascript
arguments对象验证函数的参数是否合法
2015/06/26 Javascript
jquery左右全屏大尺寸多图滑动效果代码分享
2015/08/28 Javascript
全面解析JavaScript中apply和call以及bind(推荐)
2016/06/15 Javascript
聊一聊Vue.js过渡效果
2016/09/07 Javascript
过期软件破解办法实例详解
2017/01/04 Javascript
基于jQuery实现选项卡效果
2017/01/04 Javascript
Javascript中document.referrer隐藏来源的方法
2017/01/16 Javascript
浅谈函数调用的不同方式,以及this的指向
2017/09/17 Javascript
centos 上快速搭建ghost博客方法分享
2018/05/23 Javascript
用JS实现选项卡
2020/03/23 Javascript
[01:14]2014DOTA2展望TI 剑指西雅图newbee战队专访
2014/06/30 DOTA
Python中尝试多线程编程的一个简明例子
2015/04/07 Python
Python的时间模块datetime详解
2017/04/17 Python
python 将print输出的内容保存到txt文件中
2018/07/17 Python
python3爬虫怎样构建请求header
2018/12/23 Python
python二进制文件的转译详解
2019/07/03 Python
python查找重复图片并删除(图片去重)
2019/07/16 Python
django有外键关系的两张表如何相互查找
2020/02/10 Python
使用CSS Grid布局实现网格的流动
2014/12/30 HTML / CSS
实例讲解使用HTML5 Canvas绘制阴影效果的方法
2016/03/25 HTML / CSS
Three Graces London官网:英国奢侈品牌
2021/03/18 全球购物
英国鲜花递送:Blossoming Gifts
2020/07/10 全球购物
extern在函数声明中是什么意思
2014/01/19 面试题
怎样客观的做好自我评价
2013/12/28 职场文书
优秀员工评优方案
2014/06/13 职场文书
投标授权委托书范文
2014/08/02 职场文书
大学拉赞助协议书范文
2014/09/26 职场文书
地道战观后感300字
2015/06/04 职场文书
运动员代表致辞
2015/07/29 职场文书
队名及霸气口号大全
2015/12/25 职场文书
CentOS安装Nginx并部署vue
2022/04/12 Servers