2009-12-18 73 views

回答

28
$myArray = array(5, 4, 3, 2, 1); 

echo end($myArray); 

打印 「1」

+1

並獲取最後一個元素的關鍵字...(更新它) 'end($ myArray); $ key = key($ myArray);' – ZJR 2009-12-18 09:14:14

3

array_pop()

它消除從陣列的端部的元素。如果您需要保持數組的完整性,則可以使用此值,然後將值附加到數組的末尾。 $array[] = $popped_val

+0

+1更快:D – 2009-12-18 08:39:46

1

我想說array_pop在文檔:array_pop

array_pop - 流行元素關閉數組末尾

2

試試這個:

$arrayname[count(arrayname)-1] 
+3

這是錯誤的,它只適用於有序的數值數組,即它不適用於混洗或關聯數組。 – Niteriter 2009-12-18 18:09:19

0

對於關聯數組:

$a= array('hi'=> 'there', 'ok'=> 'then'); 
list($k, $v) = array(end(array_keys($a)), end($a)); 
var_dump($k); 
var_dump($v); 

編輯:也應該適用於數字數組索引

+1

'$ v = end($ a); $ k = key($ a);'(順序是相關的)對我來說似乎更快。 – ZJR 2009-12-18 09:15:59

1

很多偉大的答案。考慮寫,如果你這樣做一次以上功能:

function array_top(&$array) { 
    $top = end($array); 
    reset($array); // Optional 
    return $top; 
} 

或者,這取決於你的脾氣:($array[] = ...最好array_push(),參見the docs

function array_top(&$array) { 
    $top = array_pop($array); 
    $array[] = $top; // Push top item back on top 
    return $top; 
} 

相關問題