0

例如,如果我有$a=array('a','b','c','d')和 make unset($a[0]),数组变为

Array
(
[1] => b
[2] => c
[3] => d
)

如果我做$a[]='e',这个数组变成

Array
(
[0] => b
[1] => c
[2] => d
[3] => e
)

(重置键)

但我需要让它看起来像

Array
(
[1] => b
[2] => c
[3] => d
[4] => d
)

当然,如果可能的话,如何用最少的代码来实现这一点?

编辑:

对不起大家

array_splice()我的代码中间。抱歉我的尴尬问题

4

1 回答 1

1

如果您找不到有用的简单$arr[] =方法,我相信这足以完成您正在做的事情

<?php

$arr = array('b','c','d');

unset($arr[0]);

end($arr);
$arr[key($arr)+1] = 'e';

var_dump($arr);

?>

请注意,这仅在您知道该数组将仅采用数字键时才有效。

另一种方法是

$arr[end(array_keys($arr))+1] = 'e';

代替

end($arr);
$arr[key($arr)+1] = 'e';
于 2013-08-30T18:37:05.777 回答