PHP:如何从多维数组制作并行数组

时间:2018-07-23 15:42:04

标签: php arrays

我有这种类型的数组

$arr = array( 
   0 => array(
         0 => array(
             'name' => 'test1',
             'country' => 'abc'  
         )
         1 => array(
             'name' => 'test2',
             'country' => 'xyz'  
         )
   )
   1 => array(
     'name' => 'test3',
     'country' => 'pqr'
   )
);

如何使所有数组成为并行数组。这样,所有子数组彼此平行,而无需使用任何循环。 像这样

$arr = array( 
       0 => array(
                 'name' => 'test1',
                 'country' => 'abc'  
             )
       1 => array(
                 'name' => 'test2',
                 'country' => 'xyz'  
             )
       2 => array(
                 'name' => 'test3',
                 'country' => 'pqr'
       )
    );

非常感谢您的帮助。 !

2 个答案:

答案 0 :(得分:0)

您可以简单地合并数组...

$out = array_merge($arr[0], [$arr[1]]);
print_r($out);

哪个给...

Array
(
    [0] => Array
        (
            [name] => test1
            [country] => abc
        )

    [1] => Array
        (
            [name] => test2
            [country] => xyz
        )

    [2] => Array
        (
            [name] => test3
            [country] => pqr
        )

)

答案 1 :(得分:0)

Nigel代码的动态版本是循环数组并合并每个子数组。

$new = [];
foreach($arr as $subarr){
    $new = array_merge($new, $subarr);
}
var_dump($new);

https://3v4l.org/np2ZD