可以。3種實現方法:1、用array_shift()刪除第一個元素并返回,語法“array_shift(數組)”;2、用array_pop()刪除最后一個元素并返回,語法“array_pop(數組)”;3、用array_splice()從指定位置開始刪除指定個數的元素,并以數組形式返回被移除元素,語法“array_splice(數組,開始位置,刪除元素的個數)”。

php入門到就業線上直播課:進入學習
API 文檔、設計、調試、自動化測試一體化協作工具:點擊使用
本教程操作環境:windows7系統、PHP8.1版、DELL G3電腦
在PHP數組中,可以獲取指定值,并將其從原數組中刪除。
方法1:使用array_shift()函數
array_shift()函數用于刪除數組中的第一個元素,并返回被刪除的元素。(array_shift()會改變原有數組的。)
array_shift(array)
示例:
"; echo "獲取元素后的:" ; var_dump($arr); ?>

可以看到這個例子,我們原先的$arr數組里面有5個元素,使用array_shift($arr)方法之后,重新使用var_dump($arr)輸出數組,發現只有4個元素了,數組頭部元素被刪除了。
array_shift()函數在刪除$arr數組的開頭的第一個元素后,arr 數組的長度會減 1,并將所有其他元素向前移動一位。如果鍵名是數字的,所有元素都將獲得新的鍵名,從 0 開始,并以 1 遞增;但字符串鍵名將保持不變。
方法2:使用array_pop()函數
array_pop() 函數刪除數組中的最后一個元素,并返回被刪除的元素。(array_pop()會改變原有數組的。)
array_pop(array)
注:如果數組是空的,或者不是一個數組,將返回 NULL。
示例:
"; echo "獲取元素后的:" ; var_dump($arr); ?>

方法3:使用array_splice()函數
array_splice()是一個強大的函數,有多重功能:可以插入數組元素、可以替換數組元素,當然也可以刪除數組元素(畢竟array_splice()函數的本職工作是刪除指定元素并用其它值取代)。下面我們就來看看它的刪除功能。
刪除語法:
array_splice(array,start,length)
| 參數 | 描述 |
|---|---|
| array | 必需。規定數組。 |
| start | 必需。數值。規定刪除元素的開始位置。 |
| length | 可選。數值。規定被移除的元素個數,也是被返回數組的長度。 |
array_splice()函數會改變原數組,并以數組形式返回被移除元素。
我們來看下面一個小例子。
輸出結果為:

可以看出,我們使用array_splice($arr,2)從$arr數組的第3個元素開始刪除元素,共刪除了3個元素(將從第3個元素開始的所有元素刪除了)。array_splice($arr,$start)會刪除從$start位置開始的所有元素刪除,并以數組的形式返回被刪除的元素。
$start參數有三種取值情況:
-
為正數,那么從$start位置開始,往后刪除;
-
為0,那么從第一個元素開始,往后刪除;
-
為負數,則從距離 $arr 末端 -start 的位置開始,從后往前刪除。例如 -2 意味著從數組的倒數第二個元素開始。
輸出結果為:

array_splice()函數是強大的,可以刪除多個元素,也可只刪除一個元素,那就需要給該函數指定一個$length參數(第三個參數),該參數用來規定刪除的元素個數。
輸出結果為:

可以看出只刪除了第三個元素“20”。
在刪除元素操作中,$length參數也有三種取值情況:
-
為正數,那么就表示刪除 length 個元素;
-
為負數,那么將刪除從 start 開始,到數組末尾倒數 length 為止的所有元素;
-
如果省略,那么將刪除從 start 開始,一直到數組末尾的所有元素。
輸出結果為:

注:$length參數還可以為0,那么就表示不刪除元素,可以和該函數的第四個參數$value相配合,進行插入操作(這里就不做具體介紹了)。
推薦學習:《PHP視頻教程》
站長資訊網