ホームページ >バックエンド開発 >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 までご連絡ください。