用unset删除数组中的某一下时,数组的下标不会从新排序
例如
$a=array("red", "green", "blue", "yellow");
count($a); //得到4
unset($a[1]); //删除第二个元素
count($a); //得到3
echo $a[2]; //数组中仅有三个元素,本想得到最后一个元素,但却得到blue,
echo $a[1]; //无值
解决方法:
1.这是在获取$a中元素时,需要判断是否为null
2.使用array_splice (array input, int offset [, int length [, array replacement]]) PHP4中的方法进行元素删除操作
$a=array("red", "green", "blue", "yellow");
count ($a); //得到4
array_splice($a,1,1); //删除第二个元素
count ($a); //得到3
echo $a[2]; //得到yellow
echo $a[1]; //得到blue