2012-01-17 43 views
0

可能重复:
How do you reindex an array in PHP?
PHP reindex array?从数组中取出元件 - 在PHP数组索引

我有一个阵列,其中我删除一个元素:

unset($array[2]); 

之后,这个元素消失了,但是这个元素已经消失了s搞砸了。我也想要对索引进行重新排序。现在,它有0,1,3,4,5,...现在2不见了。我也使用var_dump($ array),没有改变。

想法?

+1

错误:更好[你如何重新索引PHP中的数组?](http://stackoverflow.com/questions/591094/how-do-you-reindex-an-array-in-php) – hakre 2012-07-28 14:17:41

回答

4

尝试array_values

 

unset($array[2]); 
$newArr = array_values($yourArray); //after unset will show array indexed linearly 
print_r($newArr); 
 
0

未设置将简单地删除提及元件2中,作为在这种情况。这就是为什么,你没有索引了。

你需要做的是实现一个函数,将每个元素左移一个位置,从元素之一开始,超过你想要移位的索引。

之后,unset是最后一个元素。