我只带了四个数组,因为它应该足以解释这个过程。这里可能有一个更优雅的解决方案,但需要更多的思考。
要点是我发现将此类问题视为表格最容易。您的实例实际上相对简单。您有行数组,并且希望将它们转换为列数组。查看我的解决方案。
<?php
$one = array('brown', 'green', 'red', 'yellow', 'orange', 'purple');
$two = array('cupcake', 'honeycomb', 'icecream', 'chocolate', 'jellybean', 'milkshake');
$three = array('monday', 'tuesday', 'wednesday', 'thrusday', 'friday', 'saturday');
$four = array('january', 'february', 'march', 'april', 'august', 'september');
//put all of your arrays into one array for easier management
$master_horizontal = array($one, $two, $three, $four);
$master_vertical = array();
foreach ($master_horizontal as $row) {
foreach ($row as $key => $cell) {
$master_vertical[$key][] = $cell;
}
}
echo "<PRE>";
print_r($master_vertical);
返回...
Array
(
[0] => Array
(
[0] => brown
[1] => cupcake
[2] => monday
[3] => january
)
[1] => Array
(
[0] => green
[1] => honeycomb
[2] => tuesday
[3] => february
)
[2] => Array
(
[0] => red
[1] => icecream
[2] => wednesday
[3] => march
)
[3] => Array
(
[0] => yellow
[1] => chocolate
[2] => thrusday
[3] => april
)
[4] => Array
(
[0] => orange
[1] => jellybean
[2] => friday
[3] => august
)
[5] => Array
(
[0] => purple
[1] => milkshake
[2] => saturday
[3] => september
)
)