>  기사  >  백엔드 개발  >  PHP에서 배열을 수직에서 수평으로 변환하고 중복된 값을 필터링하는 방법에 대한 자세한 그래픽 설명

PHP에서 배열을 수직에서 수평으로 변환하고 중복된 값을 필터링하는 방법에 대한 자세한 그래픽 설명

墨辰丷
墨辰丷원래의
2018-05-22 09:51:141331검색

이 글은 주로 배열의 수직 변환과 중복 값 필터링을 구현하는 PHP 방법을 소개하며, 배열 순회, 변환, 중복 제거와 관련된 PHP의 작동 기술을 비교 분석합니다.

The 자세한 내용은 다음과 같습니다.

1. 질문

배열이 있습니다:


array(
  6=>array(5=>'黑xx', 42=>'XXL'),
  7=>array(5=>'黑xx', 40=>'XL'),
  8=>array(8=>'灰',  40=>'XL'),
);


다음과 같은 결과로 변환되어야 합니다. (배열은 수직으로 변환되어 수평 및 중복 값으로 변환됩니다. ​​필터링됨):


array(
  0=>array(5=>'黑xx', 8=>'灰'),
  1=>array(42=>'XXL', 40=>'XL'),
);


2. 해결 방법:

방법 1:


$a = array(
  6=>array(5=>'黑xx', 42=>'XXL'),
  7=>array(5=>'黑xx', 40=>'XL'),
  8=>array(8=>'灰',  40=>'XL'),
);
foreach($a as $r) {
 $b[key($r)] = current($r);
 next($r);
 $c[key($r)] = current($r);
}
$b = array($b, $c);
print_r($b);


방법 2:


$arr = array(
  6=>array(5=>'黑xx', 42=>'XXL'),
  7=>array(5=>'黑xx', 40=>'XL'),
  8=>array(8=>'灰',  40=>'XL'),
);
$result = array();
foreach($arr as $a){
  $keys = array_keys($a);
  $vals = array_values($a);
  $result[0][$keys[0]] = $vals[0];
  $result[1][$keys[1]] = $vals[1];
}
print_r($result);


가장 간단한 작성 방법:


$a = array(
  6=>array(5=>'黑xx', 42=>'XXL'),
  7=>array(5=>'黑xx', 40=>'XL'),
  8=>array(8=>'灰',  40=>'XL'),
);
foreach($a as $r) {
 $i = 0;
 while(list($k, $v) = each($r)) $b[$i++][$k] = $v;
}
print_r($b);


최종 실행 결과는 다음과 같습니다.


Array
(
  [0] => Array
    (
      [5] => 黑xx
      [8] => 灰
    )
  [1] => Array
    (
      [42] => XXL
      [40] => XL
    )
)



관련 권장 사항:

PHP 필터링 실용 튜토리얼 , 확인, 이스케이프 및 비밀번호 방법

PHP에 대한 지식 정보 Filter

php securityFilter


위 내용은 PHP에서 배열을 수직에서 수평으로 변환하고 중복된 값을 필터링하는 방법에 대한 자세한 그래픽 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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