2014-10-29 5 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 
    ) 

) 

Atm имеет 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

+0

Он говорит: 'Что мне нужно от этого либо получить последний индекс массива (и добавьте 1 к нему) или получите последнее значение id'. означает, что он хочет получить последний 'id', и к этому id он хочет добавить' 1' – Gautam3164

+1

Точно то, что я хотел. Приветствия. – Comum

2

попробовать с end(). Он возвращает значение последнего элемента или FALSE для пустого массива. -

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

Приветствия, только что случилось, чтобы прочитать @ Gautam3164 ответ сначала. – Comum

+0

ypu .. всего несколько секунд поздно ... :) –

+0

Чувак вы также заслуживаете. Несколько секунд неважно ;-) – Gautam3164

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 являются новичками и не поймут код, который вы опубликовали. –

Смежные вопросы