2014-10-29 43 views
0

有沒有簡單的方法來獲取關聯數組的最後一個索引?關聯數組的最後一個索引

,我想知道該指數陣列的結構如下:

Array 
(
[0] => Array 
    (
     [id] => 1 
     [x] => 35 
     [y] => 28 
     [z] => 10 
     [e] => 0 
    ) 

[1] => Array 
    (
     [id] => 2 
     [x] => 52.5 
     [y] => 42 
     [z] => 15 
     [e] => 0 
    ) 

[2] => Array 
    (
     [id] => 3 
     [x] => 69.65 
     [y] => 54.95 
     [z] => 20 
     [e] => 0 
    ) 

) 

大氣壓它有3個項目,但它可以有1和366之間我從這個需要的是要麼得到最後的數組的索引(並將其加1)或獲取最後一個值id

回答

1

嘗試像

$cnt = count($my_array); 
echo $my_array[$cnt-1]['id']; 

您還可以使用end

$end_arr = end($my_array); 
echo $end_arr['id']; 

您還可以array_slice

$end_arr = array_slice($my_array, -1, 1, true); 
echo $end_arr['id']; 
+0

就越容易添加'+ 1'爲'計數()'他'id'是一個比去年數組鍵更 – krishna 2014-10-29 09:31:47

+0

他說:'我從這個需要的是要麼得到數組的最後一個索引(並將其加1)或獲取id'的最後一個值。意味着他想要得到最後一個'id'並且想要添加這個id' 1' – Gautam3164 2014-10-29 09:35:42

+1

正是我想要的。乾杯。 – Comum 2014-10-29 09:36:37

2

end()嘗試做到這一點。它返回空數組的最後一個元素的值或FALSE。 -

$last = end($yourArray); 
$newId = $last['id']; //the last id 
+0

乾杯,剛剛讀完@ Gautam3164回答第一。 – Comum 2014-10-29 09:38:37

+0

ypu ..晚了幾秒... :) – 2014-10-29 09:39:59

+0

老兄你也配得上它。幾秒不要緊;-) – Gautam3164 2014-10-29 09:46:24

0
$key_arrays = array_keys($your_array);//gives you all key values 
$max_id = max($key_arrays);// finds the maximum value in it 
$last_id = $your_array[$max_id][id]; // and you id as your request 
+1

請編輯您的答案補充你的代碼是如何工作的解釋,以及如何解決OP的問題。許多SO海報是新手,不會理解你發佈的代碼。 – 2014-10-29 10:18:28