>  기사  >  백엔드 개발  >  PHP 2차원 배열 중복제거 예시 분석

PHP 2차원 배열 중복제거 예시 분석

高洛峰
高洛峰원래의
2016-12-12 10:09:471282검색

이 기사에서는 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 &#39;id: &#39;.$v[&#39;id&#39;].&#39;psid: &#39;.$v[&#39;psid&#39;].&#39; fullname: &#39;.$v[&#39;fullname&#39;].&#39; userid: &#39;.$v[&#39;userid&#39;].&#39;<br/>&#39;;
}
//二维数组简单去重
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

에서 찾을 수 있는 유형과 엄격하게 일치합니다.
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.