如何将数组值添加到数组的中间?

时间:2010-01-27 18:07:21

标签: php

让我说我有这个阵列:

$array = array(1,2,'b','c',5,6,7,8,9.10);

稍后在脚本中,我想在'c'之前添加值'd'。我怎么能这样做?

4 个答案:

答案 0 :(得分:31)

使用array_splice如下:

array_splice($array, 3, 0, array('d'));

答案 1 :(得分:3)

请参阅array_splice

答案 2 :(得分:0)

或更自制的方法:循环数组直到你看到'd'插入'c'然后'd'插入下一个。将所有其他条目右移一个

答案 3 :(得分:0)

关于公民问题的复杂答案是:

$array = array('Hello', 'world!', 'How', 'are', 'You', 'Buddy?');
$element = '-- inserted --';
if (count($array) == 1)
{
    return $string;
}
$middle = ceil(count($array) / 2);
array_splice($array, $middle, 0, $element);

将输出:

Array
(
    [0] => Hello
    [1] => world!
    [2] => How
    [3] => -- inserted --
    [4] => are
    [5] => You
    [6] => Buddy?
)

这就是他想要的。