2012-01-26 36 views
19

我可以使用以下內容獲取$array最後一項的值。我怎樣才能得到該項目的參考?獲取對數組最後一項的引用

$last_item = end($array); 

$array的項目是索引數組。

+0

HTTP://www.php .net/manual/en/function.end.php#24804 –

回答

35
end($array); 
$referenceToLastElement = &$array[key($array)]; 
+0

這很有趣。我想知道它會比接受的答案中的方法更好。 –

+1

@EmanuilRusev:它會更好,因爲它可以在任何陣列上正常工作。 – Jon

+0

這比count()方法快嗎? –

-1
list($last_key,$last_value) = each(array_slice($array,-1,1,true)); 

嘗試2號?

$last_item = &$array[array_pop(array_keys($array))]; 

這給你一個變量引用數組的最後一個元素。

+0

我不明白。我不需要最後一個元素的關鍵,也不需要它的價值 - 只是一個參考。 –

+0

我不確定我是否明白「只是參考」的含義。我會再試一次。查看編輯。 –

2

count()會給你的陣列,它可以適用於一些簡單的算術,以獲得對數組的最後一個元素的引用長度:

$array = array(
    array('jkl' => '456'), 
    array('abc' => '456'), 
); 
print_r($array); 
$last_item = &$array[count($array) - 1]; 
$last_item['abc'] = '123'; 
print_r($array); 
+0

這就是我所希望的那種答案。 –

+0

沒問題,樂意幫忙! – leepowers

+7

這隻有在數組索引時使用從0開始的不間斷整數序列 - 一個大的「if」。 – Jon

相關問題