首頁 >後端開發 >php教程 >数组纵向转横向怎么实现

数组纵向转横向怎么实现

WBOY
WBOY原創
2016-06-13 12:03:411296瀏覽

数组纵向转横向如何实现啊

<br />array(<br />	6=>array(5=>'黑xx', 42=>'XXL'),<br />	7=>array(5=>'黑xx', 40=>'XL'),<br />	8=>array(8=>'灰',   40=>'XL'),<br />);<br /><br />//结果:<br />array(<br />	0=>array(5=>'黑xx', 8=>'灰'),<br />	1=>array(42=>'XXL', 40=>'XL'),<br />);<br /><br />

数组纵向转横向并过滤重复值 是如何实现啊



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


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

------解决方案--------------------
最简单的写法
$a = array(<br />    6=>array(5=>'黑xx', 42=>'XXL'),<br />    7=>array(5=>'黑xx', 40=>'XL'),<br />    8=>array(8=>'灰',   40=>'XL'),<br />);<br /> <br />foreach($a as $r) {<br />  $i = 0;<br />  while(list($k, $v) = each($r)) $b[$i++][$k] = $v;<br />}<br />print_r($b);
Array<br />(<br />    [0] => Array<br />        (<br />            [5] => 黑xx<br />            [8] => 灰<br />        )<br /><br />    [1] => Array<br />        (<br />            [42] => XXL<br />            [40] => XL<br />        )<br /><br />)<br /><br />

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn