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 :: Версия для печати :: Неужели ассоциированный массив не имеет численного индекса (как в VBA)
Форумы портала PHP.SU » » Вопросы новичков » Неужели ассоциированный массив не имеет численного индекса (как в VBA)

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

1. Kave - 13 Августа, 2011 - 17:47:41 - перейти к сообщению
В VBA можно и по ключу, и по индексу обращаться к элементу.
Это очень удобно - может понадобиться, например, раздробить массив надвое.
Посчитал элементы, поделил, узнал половину. И пошел - с первого до половины. С половины - до конца.

А в PHP как? Есть цикл foreach. И чего?

Пример был просто абстрактным, речь не о нем. Просто очень неудобно, что нельзя обращаться по индексу.

Не могли бы Вы прокомментировать.
2. iflight - 13 Августа, 2011 - 18:23:15 - перейти к сообщению
нет нельзя так.
массив может быть например такой:
PHP:
скопировать код в буфер обмена
  1. $arr = array('a' => 'aa','dd','b'=>'bb','c' =>'cc');

и индексы будут такие:
CODE (html):
скопировать код в буфер обмена
  1. Array ( [a] => aa [0] => dd [b] => bb [c] => cc )


потому и нельзя) Лично я не испытывал с этим проблем(:

foreach последовательно перебирает все элементы массива просто и дает доступ при надобности и к ключи и к индексу, что часто очень удобно.
3. Champion - 13 Августа, 2011 - 18:28:43 - перейти к сообщению
Есть функция array_values(), может быть она вас удовлетворит
4. PATCH - 13 Августа, 2011 - 19:00:08 - перейти к сообщению
а мб и эта удволетворит array_chunk
а вообще описание оч хорошее тут http://php.su/functions/?cat=array

 

Powered by ExBB FM 1.0 RC1