php開發過程中,可能經常需要對取出的數組要獲取數組的最后健或值。在這里總結了三個方法,並且跟據他們三個方法在一些情況下如何使用的條件限制進行了說明。
<?php $array=array(1,2,3,4,5); echo end($array);//將數組的內部指針指向最后一個單元,適用於所有數組 echo '<br>'; //適用於鍵名為數字的數組 echo $array[count($array)-1];//計算數組長度,然后獲取數組最后一個元素,如果數組中最后一個元素含有非數字鍵名,結果可能跟預期不符合 echo '<br>'; rsort($array);//對數組逆向排序,如果數組中含有字母或漢字,結果可能不符合預期,最適用於數字數組 echo $array[0]; ?>
總體來說,php的內置函數end還是最好的方法的了。大家可以測試下。
PHP取值很容易,可以使用循環遍歷、類指針(個人稱之),但是如果取數組最后一個值的時候也采用遍歷的話是不是消耗了很多性能啊??
下面有三種取值方法可以更好的取出數組的最后一個值:
<?php $array = array(1,2,4,6,8); echo end($array); echo '<br>'; $array = array(1,2,4,6,8); echo array_pop($array); //將數組最后一個單元彈出(出棧) echo '<br>'; $array = array(1,2,4,6,8); $k = array_slice($array,-1,1); print_r($k); //結果是一維數組 ?>
這是三個函數的取值方法,直接有效,按需選擇吧。
第二種方法有一種弊端,Array_pop()函數會把原來的數據的最后一個數“取出來”,也就是相當於剪切的意思,原來的數據中將不不再有最后一個值了。