이 기사에서는 PHP에서 2차원 배열의 중복 제거 방법을 예제를 통해 분석합니다. 참고할 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.
우리 모두는 1차원 배열이 array_unique($arr) 시스템 함수를 재사용할 수 있다는 것을 알고 있습니다
하지만 오늘은 2차원 배열을 사용했습니다. -차원 배열을 사용하고 있는데, Baidu에는 2차원을 1차원으로 변환한 다음 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 에서 찾을 수 있는 유형과 엄격하게 일치합니다.