PHP刪除陣列中指定下標的元素
阿新 • • 發佈:2019-02-02
1、前面有講陣列作為堆疊和佇列時的刪除元素操作,即按順序有規律的進行刪除。那麼,如果需要從陣列的中間位置刪除某個元素該如何操作呢?就需要我們今天要講的unset()函數了。
2、unset()函式允許取消一個數組中的元素,但陣列並不會重建索引,即保持原有索引,因為php中的索引具有特殊的含義。
3、示例展示:
4、上面例子中最後一句程式碼為重新建立陣列索引,在這裡我解釋以下:因為使用unset()函式刪除一個元素以後,並沒有重新建立索引下標順序。如果需要有順序的索引下標,可以使用array_values()函式重新建立索引下標順序。<?php $arr = array(1=>'one',2=>'two',3=>'three'); //刪除下標為2的元素 unset($arr[2]); //將得到Array(1=>'one',3=>'three') //使用array_values()重新建立索引 $aar = array_values($arr); //$aar = array(0=>'one',1=>'three') ?>
注意:該處所說的重新建立索引是指:重新建立一個以0開始的順序下標,即使你的索引不是以數字命名的,也會被重新建立索引。