【问题标题】:How to automatically create a new table row如何自动创建一个新的表格行
【发布时间】:2012-05-14 20:40:23
【问题描述】:

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

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

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

我们的目标是创建一个像这样的表:每 3 个条目自动生成一个新行。

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

【问题讨论】:

    标签: php arrays loops html-table


    【解决方案1】:

    看起来像是 array_chunk()

    的工作
    array_chunk($array, 3);
    

    【讨论】:

      【解决方案2】:

      不是最漂亮的解决方案

      $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>
      

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

      【讨论】:

        猜你喜欢
        • 2016-03-08
        • 2020-09-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-08-29
        • 2011-02-05
        • 2011-11-20
        相关资源
        最近更新 更多