array_chunk - разбивает массив на части, то есть если массив имеет 16 значений, значит будет массив с имеющий 4 вложения по четыре элемента. array_map - обходит его соединяя каждое вложение в строку, внешний implode соединит все в одну строку - таблицу, а 4 х 4 = 16.
Можете сразу формировать таблицу (начинать с '<table><tr>' до цикла), не помещая генерируемые числа в массив, а формировать из них строку ('<td>' . $rand . '</td>'), добавляя ее к строке, и деля итератор по модулю 4, добавлять к ней '</tr><tr>'. По окончании цикла закрыть строку - '</tr></table>'.
|