我有两个多维数组(但为了简单起见,我们只是说它们是单维)我需要将它们合并为一个,但交替元素。第一个数组较大,我需要在第三个项目中合并第二个数组。
仅作为一个例子:
$array1 = array("Hello", "Bonjour", "Hola", "Ciao", "Привет", "Hallo","Nihao");
$array2 = array("World", "Monde", "Mundo");
我希望最终的数组看起来像这样
["Hello", "Bonjour", "World", "Hola", "Ciao", "Monde", "Привет", "Hallo", "Mundo", "Nihao"]
如果第一个数组中有更多的项目,那么它应该继续添加它们,无论第二个数组是否有任何剩余。
我该怎么做?
答案 0 :(得分:2)
在您的示例中,array2的第三项在array1的第三项之后插入,在第一项之后插入,第二项在第二项之后插入。
假设这是一个错误;并且$ array1总是足够大;你可以使用这样的东西:
$i=2; while($v = array_shift($array2))
{
array_splice($array1, $i, 0, [$v]);
$i+=3;
}