Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Foreach в PHP

Ден Але Ученик (60), на голосовании 2 года назад
Всем привет! Подскажите пожалуйста, что можно использовать (подобное) в место foreach?
Суть в том, что не могу foreach ($goods_res as $item_id => $value) использовать уже в имеющемся foreach, ругается..
Голосование за лучший ответ
Сергей Стодольский Мастер (1212) 2 года назад
Значит ты что-то делаешь не правильно. Никаких препятствий нет для использования вложенных циклов...
твой интимный гусь Мудрец (10290) 2 года назад
$goods_res должен быть массивом с ключами а не просто массивом со значениями
сделай var_dump($goods_res); и глянь что у тебя внутри

$goods_res = ['item_id1' => "value1",'item_id2' => "value2",'item_id3' => "value3",];
Дмитрий ЦарьМудрец (11433) 2 года назад
В случае индексированного массива, ключом выступает его порядковый номер. Или я чего-то не знаю?
Дмитрий Царь Мудрец (11433) 2 года назад
Пример кода и ошибка бы не помешали, для понимания, что конкретно идёт не так. Скорее всего где-то ошибка в логике кода.

Конструкция:
 foreach(...) {
foreach(...) {
// do something
}
}
допустима и не является ошибкой. Другое дело, если вы делаете что-то вроде этого:
 foreach ($array as $key => $value) {
foreach ($array as $key => $value) {
echo $value;
}
}
то есть перезаписываете переменные, которые сами же указали в качестве ключей и значений. Тут можно получить всё, что угодно.

Словом: без конкретного кода не разобраться, что не так.
Похожие вопросы