Основной метод заключается в использовании числового счетчика для отслеживания столбца и оператора модуля для удержания его в пределах диапазона столбца. Кроме того, поскольку это HTML-таблица, вы также можете заполнить пропущенные ячейки, чтобы дисплей выглядел хорошо.
Вот пример:
<?php
define('NUM_COLUMNS', 4);
$cubicle = array('A', 'B', 'C', 'D', 'E', 'F');
if( empty($cubicle) ){
echo '<p>No cubicles found.</p>';
}else{
echo '<table>' . PHP_EOL;
$column = 0;
foreach($cubicle as $cubicle_name){
if( $column==0 ){
echo '<tr>';
}
echo '<td>' . htmlspecialchars($cubicle_name) . '</td>';
if( $column==NUM_COLUMNS-1 ){
echo '</tr>' . PHP_EOL;
}
$column = ($column+1) % NUM_COLUMNS;
}
// Fill gaps
if( $column>0 ){
while( $column<NUM_COLUMNS ){
echo '<td>—</td>';
$column++;
}
echo '</tr>' . PHP_EOL;
}
echo '</table>' . PHP_EOL;
}