将多个一维阵列组合成单个多维阵列

时间:2012-01-15 15:49:04

标签: php arrays

我有三个单维数组,我需要将它们组合成一个三维数组,其中新数组中的每个数组都包含三个原始数组中每个数组的一个元素。

我知道如何使用一个简单的循环来做到这一点,但我想知道是否有更快/内置的方法来做到这一点。这是一个使用循环执行此操作的示例,以便您可以了解我正在寻找的内容。

function combineArrays(array $array1, array $array2, array $array3) {
    //Make sure arrays are of the same size
    if(count($array1) != count($array2) || count($array2) != count($array3) || count($array1) != count($array3)) {
        throw new Exception("combineArrays expects all paramters to be arrays of the same length");
    }

    //combine the arrays
    $newArray = array();
    for($count = 0; $count < count($array1); $count++) {
        $newArray[] = array($array1[$count], $array2[$count], $array3[$count]);
    }
    return $newArray;
}

1 个答案:

答案 0 :(得分:4)

$result = array_map(null,$array1,$array2,$array3);