Позвольте мне прояснить это. Я хочу запросить все данные из одной таблицы, а затем отобразить их все в четырех div (столбцах), чтобы я мог иметь макет, такой как кладка без js.
$rows = []; // Array with data from database
<div class="cols">
<div class="col"><?= $rows[1,5,...] ?></div>
<div class="col"><?= $rows[2,6,...] ?></div>
<div class="col"><?= $rows[3,7,...] ?></div>
<div class="col"><?= $rows[4,8,...] ?></div>
</div>
Ты можешь использовать array_chunk разбить ваш массив внутри цикла foreach:
<?php $rows = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]; ?>
<div class="foo">
<?php foreach (array_chunk($rows, 4) as $row) : ?>
<div class="bar">
<?php foreach ($row as $item) : ?>
<?php echo $item; ?>
<?php endforeach; ?>
</div>
<?php endforeach; ?>
</div>
Это будет равномерно разбивать массив — хотя, обратите внимание, что в моем примере последняя строка длиной 5. Это связано с остатком последней итерации (в данном случае равным 1, 4 + 1 = 5)
Других решений пока нет …