php数组删除元素示例
在某个php数组中删除一个元素,直接用的unset,也不管unset之后会发生什么。
例子:
<?php $arr = array(‘a‘,‘b‘,‘c‘,‘d‘); unset($arr[1]); print_r($arr); ?>
想象的是unset之后,数组$arr应该会压缩数组以填补缺少的元素位置,但print_r($arr)之后,结果却不是那样的,最终结果:
Array ( [0] => a [2] => c [3] => d );
数字数组的形式
<?php $arr = range(5,10,4); print_r($arr);//<span style="font-family: Simsun;font-size:16px; ">Array ( [0] => 5 [1] => 6 [2] => 7 [3] => 8 [4] => 9 [5] => 10 )</span> unset($arr[1]);//<span style="font-family: Simsun;font-size:16px; ">Array ( [0] => 5 [2] => 7 [3] => 8 [4] => 9 [5] => 10 )</span> print_r($arr); // www.jbxue.com ?>
数组删除元素,可以看到输出的形式也是数组是会填补缺少的元素的位置。
那么怎么才能做到缺少的元素会被填补并且数组会被重新索引呢?答案是:array_splice():
<?php $arr = array(‘a‘,‘b‘,‘c‘,‘d‘); array_splice($arr,1,1); print_r($arr); // <span style="font-family: Simsun;font-size:16px; ">Array ( [0] => a [1] => c [2] => d )</span> ?>
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。