Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Как узнать номер последнего элемета в нумерованном массиве?
Форумы портала PHP.SU » PHP » Программирование на PHP » Как узнать номер последнего элемета в нумерованном массиве?

Страниц (1): [1]
 

1. ShuvaL - 13 Февраля, 2011 - 19:33:39 - перейти к сообщению
Как узнать номер последнего элемета в нумерованном массиве?
С учетом того что в массиве могут быть промежутки т.е. элементов в массиве может быть восемь, а номер последнего 9 т.к. третий элемент был удален??
(Добавление)
Ну или как можно узнать название имя последней переменной в ассоциативном массиве?
т.е. если последний элемент $array["apple"] то получить нужно apple =)
2. Invert - 13 Февраля, 2011 - 20:05:57 - перейти к сообщению
Прокрутить через
PHP:
скопировать код в буфер обмена
  1. foreach ( $array as $key => $data )

записать все ключи в массив

и изъять последний, который вам и нужен.
3. ShuvaL - 13 Февраля, 2011 - 20:10:52 - перейти к сообщению
Cовсем не понял я(

Как занести этот самый ключ в переменную $num?
4. OrmaJever - 13 Февраля, 2011 - 20:17:30 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $fruits = array('apple', 'banana', 'cranberry');
  2. end($fruits);
  3. echo key($fruits);
5. LEONeso - 14 Февраля, 2011 - 09:25:39 - перейти к сообщению
ShuvaL, можно еще count использовать с -1 (нулевой массив)
6. DeepVarvar - 14 Февраля, 2011 - 11:07:06 - перейти к сообщению
ShuvaL пишет:
элементов в массиве может быть восемь, а номер последнего 9 т.к. третий элемент был удален

Чтоб такого не было, после удаления элемента(ов) юзай array_multisort($array);
Все "пустоты" пропадут и будет упорядочена индексация по ключам.
LEONeso пишет:
count использовать с -1

Не прокатит ни в случае с массивом содержащим ноль элементов, ни в случае удаления некоего элемента.
count(); покажет количество элементов, но не максимальное числовое (INT) значение ключа.
OrmaJever, красиво - возьму на заметку Хорошо
7. LEONeso - 14 Февраля, 2011 - 12:06:07 - перейти к сообщению
DeepVarvar, это да. Все зависит от случая Подмигивание
8. JustUserR - 14 Февраля, 2011 - 13:55:56 - перейти к сообщению
ShuvaL пишет:
Как узнать номер последнего элемета в нумерованном массиве?
Использование языка PHP предполагает унифицированное применение ассоциативных массивов для хранения любых допустимых списков информационных полей в том числе основанных на числовых индексах - тем не менее для обеспечения прямого доступа к вложенным элементов возможно использование внутреннего параметра счетчика обеспечивающего последовательных переход по элементов в соответсвиии с хронологическим порядком их добавления
9. alkal - 14 Февраля, 2011 - 19:24:50 - перейти к сообщению
OrmaJever пишет:
#
PHP:
скопировать код в буфер обмена
  1. $fruits = array('apple', 'banana', 'cranberry');
  2. #
  3. end($fruits);
  4. #
  5. echo key($fruits);


идеальный вариант!
10. JustUserR - 16 Февраля, 2011 - 14:11:50 - перейти к сообщению
alkal пишет:
Идеальный вариант!
Предполагаемый вариант решения задачи не обеспечивает унифицированной схемы для произвольного случая в котором требуется определение последнего элемента поскольку обеспечивает сдвиг реального внутреннего указателя массива - по этой причине при использовании указаненого варината необходимо проведения сохранения текущей позиции с обеспечением ее последующего восстановления
11. armancho7777777 - 16 Апреля, 2011 - 10:34:40 - перейти к сообщению
alkal пишет:
OrmaJever пишет:
#
PHP:
скопировать код в буфер обмена
  1. $fruits = array('apple', 'banana', 'cranberry');
  2. #
  3. end($fruits);
  4. #
  5. echo key($fruits);


идеальный вариант!

Согласен. Сам воспользовался им)

 

Powered by ExBB FM 1.0 RC1