<?php
$elementsArray = array("Egy","Kettő","Három", "Négy" , "Öt" , "Hat" , "Hét" , "Nyolc" , "Kilenc" , "Tíz", "Alma" , "Dió" , "Mák" ,"Körte" , "Cseresznye" , "asd", 'asd', 'qwe', 'retkljwer', 'xycbm'
);
$nrOfElements = count($elementsArray); // szükséges listaelemek száma
$nrOfNeededListElements = 5;
// szükséges oszlopok száma
$nrOfNeededColumns = 3;
$nrOfNeededRows = ceil($nrOfElements/($nrOfNeededListElements*$nrOfNeededColumns)); // $nrOfCellsToFill = ceil($nrOfElements/$nrOfNeededListElements);
$nrOfElementsPrinted = 0;
echo '<table class="list-items-table">';
for($row = 0; $row < $nrOfNeededRows; $row++){
// sor
echo '<tr>';
for($cell = 0; $cell < $nrOfNeededColumns; $cell++) {
// <td>-t mindenképp kiírjuk, üresen is (bár elvileg nem feltétlenül muszáj)
echo '<td>';
// akkor írjuk csak ki az <ul>-t, ha szükséges
if($nrOfElementsPrinted < $nrOfElements) {
echo '<ul class="list-items">';
for($i = 0; ($i < $nrOfNeededListElements) && ($nrOfElementsPrinted < $nrOfElements); $i++) {
echo '<li>';
echo $elementsArray[$nrOfElementsPrinted];
echo '</li>';
$nrOfElementsPrinted++;
}
echo '</ul>';
}
echo '</td>';
}
echo '</tr>';
}
echo '</table>';
PD9waHAKCiAgJGVsZW1lbnRzQXJyYXkgPSBhcnJheSgiRWd5IiwiS2V0dMWRIiwiSMOhcm9tIiwgIk7DqWd5IiAsICLDlnQiICwgIkhhdCIgLCAiSMOpdCIgLCAiTnlvbGMiICwgIktpbGVuYyIgLCAiVMOteiIsICJBbG1hIiAsICJEacOzIiAsICJNw6FrIiAsIkvDtnJ0ZSIgLCAiQ3NlcmVzem55ZSIKICAsICJhc2QiLCAnYXNkJywgJ3F3ZScsICdyZXRrbGp3ZXInLCAneHljYm0nCiAgKTsKCiAgJG5yT2ZFbGVtZW50cyA9IGNvdW50KCRlbGVtZW50c0FycmF5KTsKICAvLyBzesO8a3PDqWdlcyBsaXN0YWVsZW1layBzesOhbWEKICAkbnJPZk5lZWRlZExpc3RFbGVtZW50cyA9IDU7CiAgLy8gc3rDvGtzw6lnZXMgb3N6bG9wb2sgc3rDoW1hCiAgJG5yT2ZOZWVkZWRDb2x1bW5zID0gMzsKICAkbnJPZk5lZWRlZFJvd3MgPSBjZWlsKCRuck9mRWxlbWVudHMvKCRuck9mTmVlZGVkTGlzdEVsZW1lbnRzKiRuck9mTmVlZGVkQ29sdW1ucykpOwogIC8vICRuck9mQ2VsbHNUb0ZpbGwgPSBjZWlsKCRuck9mRWxlbWVudHMvJG5yT2ZOZWVkZWRMaXN0RWxlbWVudHMpOwogICRuck9mRWxlbWVudHNQcmludGVkID0gMDsKICBlY2hvICc8dGFibGUgY2xhc3M9Imxpc3QtaXRlbXMtdGFibGUiPic7CiAgZm9yKCRyb3cgPSAwOyAkcm93IDwgJG5yT2ZOZWVkZWRSb3dzOyAkcm93KyspewogICAgLy8gc29yCiAgICBlY2hvICc8dHI+JzsKICAgIGZvcigkY2VsbCA9IDA7ICRjZWxsIDwgJG5yT2ZOZWVkZWRDb2x1bW5zOyAkY2VsbCsrKSB7CiAgICAgIC8vIDx0ZD4tdCBtaW5kZW5rw6lwcCBracOtcmp1aywgw7xyZXNlbiBpcyAoYsOhciBlbHZpbGVnIG5lbSBmZWx0w6l0bGVuw7xsIG11c3rDoWopCiAgICAgIGVjaG8gJzx0ZD4nOwogICAgICAgIC8vIGFra29yIMOtcmp1ayBjc2FrIGtpIGF6IDx1bD4tdCwgaGEgc3rDvGtzw6lnZXMKICAgICAgICBpZigkbnJPZkVsZW1lbnRzUHJpbnRlZCA8ICRuck9mRWxlbWVudHMpIHsKICAgICAgICAgIGVjaG8gJzx1bCBjbGFzcz0ibGlzdC1pdGVtcyI+JzsKICAgICAgICAgIGZvcigkaSA9IDA7ICgkaSA8ICRuck9mTmVlZGVkTGlzdEVsZW1lbnRzKSAmJiAoJG5yT2ZFbGVtZW50c1ByaW50ZWQgPCAkbnJPZkVsZW1lbnRzKTsgJGkrKykgewogICAgICAgICAgICBlY2hvICc8bGk+JzsKICAgICAgICAgICAgZWNobyAkZWxlbWVudHNBcnJheVskbnJPZkVsZW1lbnRzUHJpbnRlZF07CiAgICAgICAgICAgIGVjaG8gJzwvbGk+JzsKICAgICAgICAgICAgJG5yT2ZFbGVtZW50c1ByaW50ZWQrKzsKICAgICAgICAgIH0KICAgICAgICAgIGVjaG8gJzwvdWw+JzsKICAgICAgICB9CiAgICAgIGVjaG8gJzwvdGQ+JzsKICAgIH0KICAgIGVjaG8gJzwvdHI+JzsKICB9CiAgZWNobyAnPC90YWJsZT4nOw==