我们在用unset($arr($k))来删除数组元素时,会发现被删除的值的索引空了,因为业务的需要,我们有时候需要保留索引
有以下两种方法:
方法一:array_values函数
$arr = array(1,2,3,4);
unset($arr[1]);
echo $array[1]; // error Undefined offset
print_r($arr);
// 输出如下
/**
Array
(
[0] => 1
[2] => 3
[3] => 4
)
**/
$arr = array_values($arr);
print_r($arr);
// 输出如下
/**
Array
(
[0] => 1
[1] => 3
[2] => 4
)
**/
第二种方法
function array_remove(&$arr,$offset){ array_splice($arr,$offset,1); } $a = array('a','b','c','d'); array_remove($a,2); print_r($a);