首頁  >  文章  >  後端開發  >  php怎麼移除最後兩個陣列元素

php怎麼移除最後兩個陣列元素

青灯夜游
青灯夜游原創
2022-08-18 19:41:282354瀏覽

兩種移除方法:1、使用array_splice()函數,只需將函數的第二個參數設為“-2”即可,語法“array_splice($arr,-2)” ,會改變原數組。 2.使用array_slice()函數,只需將函數的第二個參數設為0,第三個參數設為「-2」即可,語法「array_slice($arr,0,-2)」。

php怎麼移除最後兩個陣列元素

本教學操作環境: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);
?>

輸出結果

php怎麼移除最後兩個陣列元素

方法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個參數設為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怎麼移除最後兩個陣列元素

推薦學習:《PHP影片教學

以上是php怎麼移除最後兩個陣列元素的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn