简体   繁体   English

如何在数组中的所有其他元素之间添加一个元素

[英]How do I add an element between all the other elements in an array

I have a question, let's say I have this array:我有一个问题,假设我有这个数组:

$array = ["one", "two", "three", "four"];

And I want to add "test" between elements in the array, so it becomes like this:我想在数组中的元素之间添加"test" ,所以它变成了这样:

$array = ["test", "one", "test", "two", "test", "three", "test", "four"];

My current way of doing it is by doing this:我目前的做法是这样做:

$array = ["one", "two", "three", "four"];
$newArray = "test." . implode("test.", $array);
$newArray = explode(".", $newArray);

But I want a way that's cleaner, can somebody help me please?但是我想要一种更清洁的方法,有人可以帮我吗?

$array = [...]; // Defined in question
$newArray = [];
foreach ($array as $key => $value) {
    $even = $key * 2;
    $odd = $even + 1;
    $newArray[$odd] = $value;
    $newArray[$even] = "test";

    // Or just reusing $key
    // $key *= 2;
    // $newArray[$key + 1] = $value;
    // $newArray[$key] = "test";
}
var_dump($newArray);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM