交替数组每三个项目合并一次

Alternate arrays merge every third item

我有两个多维数组(但为了简单起见,我们只说它们是一维的)我需要将它们合并成一个,但元素是交替的。第一个数组更大,我需要在每三个项目中合并第二个数组。

举个例子:

$array1 = array("Hello", "Bonjour", "Hola", "Ciao", "Привет", "Hallo","Nihao");
$array2 = array("World", "Monde", "Mundo");

我希望最终数组看起来像这样

["Hello", "Bonjour", "World", "Hola", "Ciao", "Monde", "Привет", "Hallo", "Mundo", "Nihao"]

如果第一个数组中的项目更多,那么它应该继续添加它们,而不管第二个数组是否还有剩余。

我该怎么做?

在您的示例中,array2 的第三项插入到 array1 的第三项之后,第一个和第二个插入到第二个之后。

假设这是一个错误; $array1 总是足够大;你可以使用这样的东西:

$i=2; while($v = array_shift($array2))
{
    array_splice($array1, $i, 0, [$v]);
    $i+=3;
}