@dev400

Как построчно выводить через foreach?

Нужно примерно как тут pratta.ru/catalogue
выводится построчно, по 4 элемента в строке. И строки нумеруются row1, row2, row3 и тд
  • Вопрос задан
  • 370 просмотров
Решения вопроса 3
Alexufo
@Alexufo
противоречивый, сложный, весь компьютерный.
Начнем с того что там адаптивщина, и 4 в строке - условность.

А выводить по 4 очень просто. Остаток от деления если равен 0 то.

// закрывать див с элементами и открывать новый.
<?if(i % 4 == 0) { ?>
        </div> <div>
<?} ?>
Ответ написан
Комментировать
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Такие вещи делаются через CSS.
Ответ написан
profesor08
@profesor08 Куратор тега PHP
Если делать как на примере, то вам ненадо заморачиваться на счет вывода елементов по 4 в строку. Выводите все элементы по одному.
foreach ($items as $key => $item) {
    echo "<div>{$item}</div>";
}


Далее в CSS вы устанавливаете ширину контейнера и ширину/высоту div. Все.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
//$arr - "плоский" список элементов
foreach ($arr as $i=>$item){
     $row=1+floor($i/4);
     $col=($i+1)%4;

     if ($col==1) echo '<div>'.$item;
     else if ($col<4) echo $item;
     else echo $item."</div>\r\n";
}
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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