本文实例分析了PHP二维数组去重的方法。分享给大家供大家参考,具体如下:
都知道一维数组去重用系统函数 array_unique($arr)
然后今天我用到二维数组了,也想去重,百度一大堆,都是将二维转一维 然后使用array_unique($arr)
看得我很恼火,所以决定自己写一个。比他的简单好懂,记录下来,以备后用
1,'psid'=>'P101','fullname'=>'课程计划全称 101','userid'=>4),array('id'=>1,'userid'=>3),'userid'=>2),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'].'
'; } //二维数组简单去重 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; }
'; } //二维数组简单去重 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; }
打印结果:
PHP;">
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程序设计有所帮助。
原文链接:https://www.f2er.com/php/18478.html