> 백엔드 개발 > PHP 튜토리얼 > 有关问题有点绕,头晕者勿进^

有关问题有点绕,头晕者勿进^

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-06-13 12:05:40
원래의
966명이 탐색했습니다.

问题有点绕,头晕者勿进^_^
array ( 0 => array ( 'id' => '10', 'title' => 'a','type' => '1', 'bian'=>'1'), 
 1 => array ( 'id' => '10', 'title' => 'a','type' => '1', 'bian'=>2), 
 2 => array ( 'id' => '11', 'title' => 'b','type' => '2', 'bian'=>'1'),
 3 => array ( 'id' => '11', 'title' => 'c','type' => '2', 'bian'=>'2'),  
 )
 当type=1去除相同id重复并且key变成ID,当type=2时KEY变成id_bian的形式,最终转成以下数组
 array ( 0 => array ( '10' => '', '11_1' => '','11_2' => ''),)
 然后在与下面数组合并
 array ( 0 => array ( '10' => '1','11_2' => '1'), 
 1 => array ( '10' => '1','11_2' => '1'),
 2 => array ( '11_1' => '1','11_2' => '1'),
 3 => array ( '10' => '2','11_2' => '1'),  
 )
 最终得到
  array ( 0 => array ( '10' => '1','11_1'=>'','11_2' => '1'), 
 1 => array ( '10' => '1', '11_1 => '', 11_2' => '1'),
 2 => array ( '10' => '', '11_1' => '1', '11_2' => '1'),
 3 => array ( '10' => '2', '11_1' => '', '11_2' => '1'),  
 )
------解决方案--------------------

$a = array (<br /> 0 => array ( 'id' => '10', 'title' => 'a','type' => '1', 'bian'=>'1'), <br /> 1 => array ( 'id' => '10', 'title' => 'a','type' => '1', 'bian'=>'2'), <br /> 2 => array ( 'id' => '11', 'title' => 'b','type' => '2', 'bian'=>'1'),<br /> 3 => array ( 'id' => '11', 'title' => 'c','type' => '2', 'bian'=>'2'),  <br />);<br />$b = array (<br /> 0 => array ( '10' => '1','11_2' => '1'), <br /> 1 => array ( '10' => '1','11_2' => '1'),<br /> 2 => array ( '11_1' => '1','11_2' => '1'),<br /> 3 => array ( '10' => '2','11_2' => '1'),  <br />);<br />$t = array();<br />foreach($a as $item) {<br />  if($item['type'] == '1') {<br />    $t[$item['id']] = '';<br />  }else $t[$item['id'].'_'.$item['bian']] = '';<br />}<br />$c = array();<br />foreach($b as $v) {<br />  $r = array();<br />  foreach($t as $k=>$n) $r[$k] = @$v[$k];<br />  $c[] = $r;<br />}<br />print_r($c);
로그인 후 복사
Array<br />(<br />    [0] => Array<br />        (<br />            [10] => 1<br />            [11_1] => <br />            [11_2] => 1<br />        )<br /><br />    [1] => Array<br />        (<br />            [10] => 1<br />            [11_1] => <br />            [11_2] => 1<br />        )<br /><br />    [2] => Array<br />        (<br />            [10] => <br />            [11_1] => 1<br />            [11_2] => 1<br />        )<br /><br />    [3] => Array<br />        (<br />            [10] => 2<br />            [11_1] => <br />            [11_2] => 1<br />        )<br /><br />)<br /><br />
로그인 후 복사

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿