如何从PHP中的多维数组中获取自定义数组

时间:2013-08-07 12:47:27

标签: php arrays multidimensional-array

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

我有这个数组:

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
            )    
.
.
.
    )

谢谢。 :)

2 个答案:

答案 0 :(得分: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

答案 1 :(得分: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是此输出数组。

相关问题