0

我需要一些帮助来用 PHP 生成一个表。

我有一个包含 10 -15 个条目的数组。像这样:

$array = array(IME1, IME2, IME3, IME4,IME5, IME6, IME7 ,IME8 ,IME9 ,IME10);

目标是创建一个像这样的表:在每 3 个条目上自动创建一个新行。

例子

有人可以帮我解决这个问题吗?

4

2 回答 2

4

看起来像一份工作array_chunk()

array_chunk($array, 3);
于 2012-05-05T15:51:03.377 回答
0

不是最漂亮的解决方案

$chunks = array_chunk($array, $max_col); 
$max_col = 3; 
?>
<table border="1">
    <tbody>
        <? foreach($chunks as $key => $value){
            echo "<tr>";
            foreach($value as $k => $v){
                echo "<td> ".$v." </td>";
            }
            // Finish tr, but only if there are no items left for the next row
            if( count($value) == $max_col ){
                echo "</tr>";
            }
        }
        // Finish td with an empty value setting colspan if there are not enough items to fil the entire row
        if( count($value) < $max_col ){
            echo "<td colspan=".($max_col-count($v)-1)."></td>";
            // Finish the last row
            echo "</tr>";
        }
        ?>
    </tbody>
</table>

考虑将您的逻辑与您的演示文稿分开。有许多模板引擎可以轻而易举地解决这个问题,或者让你定义一个函数/修饰符/片段来处理这个任务并让你轻松地重用它。

于 2012-06-14T23:41:08.643 回答