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


How can I get custom array from a multidimensional array in PHP

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

我有这个阵列:

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

谢谢。:)

您的输入数组是$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

假设您的输入数组是$arr1

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

$v就是这个输出数组。