- array_map: documentation ( source)
- array_chunk: documentation ( source)
- array_merge: documentation ( source)
- ceil: documentation ( source)
- range: documentation ( source)
<?php
$columns_count = 3;
$array = range(1, 10);
$chuncked_array = array_chunk($array, ceil(sizeof($array) / $columns_count));
echo "<table>\n";
call_user_func_array('array_map', array_merge(array(function()
{
echo "<tr>\n";
array_map(function ($value)
{
echo " <td>$value</td>\n";
}, func_get_args());
echo "</tr>\n";
}), $chuncked_array));
echo "</table>\n";