代码之家  ›  专栏  ›  技术社区  ›  ant

在php中分组项

  •  0
  • ant  · 技术社区  · 15 年前

    我在用php排序表中的项目时遇到问题。以下是我想要实现的目标:

    Item    Item    Item
    Item    Item    Item
    Item    Item    Item
    Item    Item    Item
    Item    Item    Item
    

    我是怎么做到这一点的,既然我有一个for each循环,我可以插入计数器,并说在第5项列出后,写到另一列,问题是我不擅长表格,我尝试了如下方法:

    for(...)
    $counter++;
    if(($counter%5) == 0){
    echo "";
    }
    

    没有发生..我希望你明白我的意思。TNX

    1 回复  |  直到 15 年前
        1
  •  3
  •   nickf    15 年前

    我想你想要这个:

    Item1    Item6    Item11
    Item2    Item7    Item12
    Item3    Item8    Item13
    Item4    Item9    Item14
    Item5    Item10   Item15
    

    如果你是在一张桌子上做的,你要穿过然后向下,所以你需要在跳下一行之前画出每五个项目。

    $numItems = count($items);
    $numRows = 5;
    $numColumns = ceil($numItems / $numRows);
    
    echo "<table>";
    for ($r = 0; $r < $numRows; ++$r) {
        echo "<tr>";
        for ($c = 0; $c < $numColumns; ++$c) {
            $itemIndex = $c * $numRows + $r; // 0, 5, 10, 1, 6, 11, 2, 7, 12...
            echo "<td>";
            if (isset($items[$itemIndex])) {
                echo $items[$itemIndex];
            } else {
                echo "&nbsp;";
            }
            echo "</td>";
        }
        echo "</tr>";
    }
    echo "</table>";
    
    推荐文章