从PHP数组中删除并调整索引

Cli*_*ote 1 php

如果我有这个数组:

<?php

$array[0]='foo';
$array[1]='bar';
$array[2]='foo2';
$array[3]='bar3';

?>
Run Code Online (Sandbox Code Playgroud)

我想删除第二个条目($array[1]),但是所有剩余条目的索引都会自动调整,因此接下来的索引为2和3的2个元素将变为1和2.

如何做到这一点,还是有内置功能?

Gum*_*mbo 6

有几种方法可以做到这一点.一种是array_values在删除项目后使用以获取值:

unset($array[1]);
$array = array_values($array);
var_dump($array);
Run Code Online (Sandbox Code Playgroud)

另一种是使用array_splice:

array_splice($array, 1, 1);
var_dump($array);
Run Code Online (Sandbox Code Playgroud)