PHP删除数组中指定下标的元素方法

下面小编就为大家分享一篇PHP删除数组中指定下标的元素方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧。

1、前面有讲数组作为堆栈和队列时的删除元素操作,即按顺序有规律的进行删除。那么,如果需要从数组的中间位置删除某个元素该如何操作呢?就需要我们今天要讲的unset()函数了。

2、unset()函数允许取消一个数组中的元素,但数组并不会重建索引,即保持原有索引,因为php中的索引具有特殊的含义。

3、示例展示:

  1. <?php
  2. $arr = array(1=>'one',2=>'two',3=>'three');
  3. //删除下标为2的元素
  4. unset($arr[2]); //将得到Array(1=>'one',3=>'three')
  5. //使用array_values()重新建立索引
  6. $aar = array_values($arr); //$aar = array(0=>'one',1=>'three')
  7. ?>

4、上面例子中最后一句代码为重新建立数组索引,在这里我解释以下:因为使用unset()函数删除一个元素以后,并没有重新建立索引下标顺序,如果需要有顺序的索引下标,可以使用array_values()函数重新创建索引下标顺序。

注意:该处所说的重新建立索引是指:重新建立一个以0开始的顺序下标,即使你的索引不是以数字命名的,也会被重新建立索引。