@PoodingRex

Почему return внутри foreach отдаёт не все значения?

Доброго времени суток. Пытаюсь вывести результаты foreach, но return возвращает только первое значение из всего цикла.
т.е. должно получиться:
  • Товар 1 x 10; id товара 12
  • Товар 2 x 123 ;id товара 13
  • Товар 3 x 3 ;id товара 16

Но отдаёт только Товар 1 x 10; id товара 12.
Код такой:
foreach ($products as $product) {
    $name = $product['name'];
    $count = $product['count'];
    $id = $product['p_id'];
    $output = $name . "x" . $count .";". "id товара" . $id ; 
    return $output; 
    
}


При этом, если заменить return на echo - всё работает как нужно. Но modx не дружит с echo, там нужно использовать return =(
  • Вопрос задан
  • 942 просмотра
Пригласить эксперта
Ответы на вопрос 1
GavriKos
@GavriKos
Потому что выполнение цикла закончится с первым же return.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы