【问题标题】:Need logic for printing table in php需要在php中打印表格的逻辑
【发布时间】:2012-07-14 11:47:45
【问题描述】:
for ($count = 1; $count < 20; $count++) {
        if ($count == 1 || $count % 4 == 0) {
            ?> <tr> <?php 
        }
        if (true) {
            ?> <td><?php echo $count; ?></td> <?php
        }
        if (($count + 1) % 4 == 0){
            ?> </tr> <?php
        }

此代码运行良好,但唯一的问题是在前 2 行成功打印后,它没有按正确的顺序打印新行,它超过了一行,m 卡住了,需要逻辑使其正确。谢谢

【问题讨论】:

  • 结果是什么样的外壳?
  • 你想要什么样的桌子?多少行/列!!
  • 好行被提到为 应该是每行 3 !希望你明白了....它打印包含 的新行,但正如我所说,我需要一行 3 个,但它超出了某个地方!

标签: php logic


【解决方案1】:

遍历行,然后遍历列:

$counts = range(1, 19);
foreach (array_chunk($counts, 4) as $rowCounts)
{
    echo '<tr>';
    foreach ($rowCounts as $count) 
    {
        printf("<td>%d</td>", $count);
    }
    echo '</tr>'; 
}

【讨论】:

  • 太棒了,只需将 4 更改为 3 即可。非常感谢
【解决方案2】:

就个人而言,我对非常简单的表格所做的事情是这样的:

function Tr ($text) {
    echo "<tr><td>$text</td></tr>";
}

然后你可以这样循环:

for ($count = 1; $count < 20; $count++) {
    Tr ($count);
}

另外,我建议您不要像那样频繁地切换进出,但我认为这只是风格问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-08
    • 2012-07-29
    • 2020-10-02
    • 2012-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-11
    相关资源
    最近更新 更多