PHP數組操作如何刪除數組中的首尾元素?

WBOY
發布: 2023-04-10 19:40:02
原創
3390 人瀏覽過

在之前的文章《怎麼解決PHP中數組的排序與打亂問題? 》中詳細的介紹了PHP中數組排序的相關知識,這篇文章我們來看看PHP中刪除數組頭部或尾部元素操作的相關知識,希望對大家有幫助!

PHP數組操作如何刪除數組中的首尾元素?

在上一篇文章中我們了解了想要將多個陣列進行排序可以使用array_multisort函數,想要將陣列內的元素進行打亂的話可以使用shuffle函數來實現,這些都是數組操作中比較常見的操作,下面我們來看一下在PHP中怎樣才能完成刪除數組中的第一個元素或者刪除數組中的最後一個元素。

在PHP中內建了array_shif函數來刪除數組中的第一個元素,還有array_pop函數用來刪除數組中的最後一個元素,下面我們就分別來看這兩種函數的用法。雖然都是刪除元素,這兩個函數不同於unset函數和array_splice函數,本介紹的兩種函數不需要知道陣列元素的鍵值和鍵名。

<strong><span style="font-size: 20px;">array_shif</span></strong>#函數-刪除陣列第一個元素

在PHP中可以透過array_shif函數來對陣列元素進行刪除第一個的操作,array_shif函數的基本語法格式如下:

array_shift(array)
登入後複製

其中需要注意的是:

參數array表示的就是需要進行刪除操作的數組,函數在執行成功後傳回的結果是刪除元素的值,如果函數執行不成功則傳回的結果是NULL。如果數組中的鍵名是數字的話,透過函數刪除元素之後鍵名會重新進行分配,從0#開始後面是1以此類推。

下面我們透過範例來看一下array_shift函數的使用,範例如下:

<?php
$num = array(10, 45, 9, 100, 6);
array_shift($num);  //删除数组开头的第一个元素
print_r($num);
?>
登入後複製

輸出結果:

PHP數組操作如何刪除數組中的首尾元素?

##在上述範例中,透過

array_shift函數刪除了陣列元素中的第一個元素,下面我們來看看如果陣列中的鍵名是數字會對輸出結果有什麼影響,範例如下:

<?php
$num = array(10, 45, 9, 100, 6);
array_shift($num);  //删除数组开头的第一个元素
print_r($num);
echo &#39;<br/>&#39;;
$num1 = array(12=>10, 15=>45, 18=>9, 20=>100, 22=>6);
array_shift($num1);  //删除数组开头的第一个元素
print_r($num1);
?>
登入後複製

輸出結果:


PHP數組操作如何刪除數組中的首尾元素?

#上述範例中可以看出,當陣列中的鍵名為數字的時候,透過

array_shift函數來刪除第一個陣列元素的時候會重新從0開始指派鍵名。

上述中我們了解到了可以透過

array_shift函數來刪除數組中的第一個元素,那下面我們來看看怎麼透過array_pop函數來刪除數組元素中的最後一個元素。

<strong>array_pop<span style="max-width:90%"></span></strong>#函數-刪除最後一個元素##在PHP中與

array_shift

函數類似的是,我們可以透過array_pop函數來刪除陣列元素中的最後一個元素,array_pop函數的基本語法格式如下: <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">array_pop(array)</pre><div class="contentsignin">登入後複製</div></div>其中需要注意的是:


參數

array

就是需要進行刪除操作的數組,函數執行成功的話返回的結果就是被刪除的元素,如果數組為空或參數不是數組,那麼傳回的結果就是NULL下面我們透過範例來看

array_pop

函數的使用,範例如下:

<?php
$num = array(10, 45, 9, 100, 6);
array_pop($num);  //删除数组最后的一个元素
print_r($num);
?>
登入後複製

輸出結果:


PHP數組操作如何刪除數組中的首尾元素?上述範例便是透過

array_pop

函數來刪除陣列中的最後一個元素,在透過

array_shif

函數刪除第一個元素的時候我們了解到,當數組的鍵名是數字的時候,鍵名會重新分配,那麼當我們使用array_pop函數來對數組進行刪除最後一個元素操作的時候,如果數組中元素的鍵名是數字的話,鍵名會被重新分配嗎? 我們我們透過範例來驗證一下,看看

array_pop

函數會不會對數字鍵名稱產生影響,範例如下:<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">&lt;?php $num = array(10, 45, 9, 100, 6); array_pop($num); //删除数组最后的一个元素 print_r($num); echo &amp;#39;&lt;br/&gt;&amp;#39;; $num1 = array(12=&gt;10, 15=&gt;45, 18=&gt;9, 20=&gt;100, 22=&gt;6); array_pop($num1); //删除数组最后的一个元素 print_r($num1); ?&gt;</pre><div class="contentsignin">登入後複製</div></div>輸出結果: <p><br></p> <p></p> <p>透過上述範例能夠發現,透過<code>array_pop函數刪除陣列中的最後一個元素,並不會像array_shif函數一樣遇到數字為鍵名的時候會重新分配鍵名。 array_pop函數不會重新指派鍵名。

大家如果有興趣的話,可以點選《PHP影片教學》進行更多關於PHP知識的學習。

以上是PHP數組操作如何刪除數組中的首尾元素?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板