0

我搜索了,到目前为止我找不到任何相关的答案。所以,如果我弄错了或者这是一个基本问题,请原谅。

我有这个数组:

Array
(
    [name] => Array
        (
            [0] => name1
            [1] => name2
            [2] => name3
        )

    [price] => Array
        (
            [0] => price1
            [1] => price2
            [2] => price3
        )

    [option] => Array
        (
            [0] => option1
            [1] => option2
            [2] => option3
        )

    [disabled] => Array
        (
            [0] => disabled1
            [1] => disabled2
            [2] => disabled3
        )

)

我的问题是,如何从中获得以下数组。

    Array
    (
        [0] => Array
            (
                [name] => name1
                [price] => price1
                [option] => option1
                [disabled] => disabled1
            )
        [1] => Array
            (
                [name] => name2
                [price] => price2
                [option] => option2
                [disabled] => disabled2
            )    
.
.
.
    )

谢谢你。:)

4

2 回答 2

1

你的输入数组是$in_arr

$out_arr = array();
foreach ($in_arr as $key => $sub_arr)
{
    foreach ($sub_arr as $sub_key => $sub_value)
    {
         $out_arr[$sub_key][$key] = $sub_value;
    }
}

print_r($out_arr);

您需要的输出数组是$out_arr

于 2013-08-07T13:06:33.513 回答
0

假设您的输入数组是$arr1.

<?php
$v = array();
for ($i=0; i<3; $i++)
{
   $v[i] = array();
   foreach ($arr1 as $x => $y)
   $v[i][$x] = $y[i]
}
?>

$v是这个输出数组。

于 2013-08-07T13:01:33.033 回答