兩種移除方法:1、使用array_splice()函數,只需將該函數的第二個參數設置為“-2”即可,語法“array_splice($arr,-2)”,會改變原數組。2、使用array_slice()函數,只需將該函數的第二個參數設置為0,第三個參數設置為“-2”即可,語法“array_slice($arr,0,-2)”。
本教程操作環境:windows7系統、PHP8.1版、DELL G3電腦
php移除最后兩個數組元素的兩種方法
方法1、使用array_splice()函數移除最后兩個數組元素
array_splice()函數在刪除數組的一部分元素時,會將這些被刪除的元素組成為一個新數組,然后返回這個新數組;因此array_splice()函數可以用來截取數組片段。
array_splice(array1,start,length,array2)
參數 | 描述 |
---|---|
array1 | 必需。規定數組。 |
start | 必需。數值。規定刪除元素的開始位置。 0 = 第一個元素。 如果該值設置為正數,則從數組中該值指定的偏移量開始移除。如果該值設置為負數,則從數組末端倒數該值指定的偏移量開始移除。 -2 意味著從數組的倒數第二個元素開始。 |
length | 可選。數值。規定被移除的元素個數,也是被返回數組的長度。 如果該值設置為正數,則移除該數量的元素。如果該值設置為負數,則移除從 start 到數組末端倒數 length 為止中間所有的元素。如果該值未設置,則移除從 start 參數設置的位置開始直到數組末端的所有元素。 |
array2 | 可選。規定帶有要插入原始數組中元素的數組。如果只有一個元素,則可以設置為字符串,不需要設置為數組。 |
該函數會改變原數組,并返回包含被提取元素的數組。
只需將該函數的第二個參數start設置為-2即可移除最后兩個數組元素
<?php header("Content-type:text/html;charset=utf-8"); $arr = array(1,2,3,4,5,6,7,8,9,10); echo "原數組:"; var_dump($arr); echo "移除最后兩個數組元素后:"; $result = array_splice($arr,-2); //截取數組后2位的元素 var_dump($arr); echo "被刪除的數組元素:"; var_dump($result); ?>
輸出結果
方法2、使用array_slice()函數移除最后兩個數組元素
array_slice()函數就是PHP提供的用來截取數組的一個函數,可以從數組中提取出一個片段。語法如下:
array array_slice ( array $arr , int $start [, int $length = NULL [, bool $preserve_keys = false ]] )
參數說明:
- arr 表示要截取的數組。
- start 表示開始截取的位置(下標):
- 如果 start 為正數,則從前往后截取。
- 如果 start 為負數,則從距離 arr 末端 -start 的位置開始,從后往前截取。例如 -2 意味著從數組的倒數第二個元素開始。
- length 是可選參數,表示截取長度:
- 如果 length 為正數,那么表示截取的元素個數;
- 如果 length 為負數,那么截取的片段將終止在距離數組末端 length 的位置;
- 如果省略,那么將從 start 位置開始,一直截取到數組的末尾。
- preserve_keys 是可選參數,規定是否保留原來的鍵名,默認為 false,也即不保留;如果設置為 true,將保留原有的鍵名。
返回值:返回數組中的選定部分。
想要截取數組后2位元素,只需將第2個參數設置為0,第3個參數設置為-2即可。
<?php header("Content-type:text/html;charset=utf-8"); $arr = array(1,2,3,4,5,6,7,8,9,10); echo "原數組:"; var_dump($arr); echo "移除最后兩個數組元素后:"; $result = array_slice($arr,0,-2); var_dump($result); ?>
輸出結果
推薦學習:《PHP視頻教程》