部分展平多维阵列

1 php flatten multidimensional-array array-column

什么是转换看起来像这样的数组的好方法:

Array (
    [0] = Array (
            [0] = Array (
                    [key] = val
                    [key2] = val2
                )

        )
    [1] = Array (
            [0] = Array (
                    [key] = val
                    [key2] = val2
                )

        )
)
Run Code Online (Sandbox Code Playgroud)

Array (
    [0] = Array (
            [key] = val
            [key] = val2
        )
    [1] = Array (
            [key] = val
            [key] = val2
        )
)
Run Code Online (Sandbox Code Playgroud)

Pau*_*xon 5

这可能是一种相当简洁的方法

$output=array_map('array_shift', $input);
Run Code Online (Sandbox Code Playgroud)

这使用array_map在输入数组的每个元素上调用array_shift,这将为您提供每个子数组的第一个元素!漂亮的小班轮,没有?

很好,它并不是非常有效,因为array_shift比我们需要更多的工作 - 一个简单的循环实际上要快得多(我只是在1000个元素的数组上做了快速基准测试,这个速度快了大约6倍)

$output=array();
foreach ($input as $element){
    $output[]=$element[0];
}
Run Code Online (Sandbox Code Playgroud)