PHP foreach 表列

标签 php html mysql foreach html-table

我想让它每 3 列形成一个新行。我迷路了,甚至在阅读了其他帖子后也不知道该怎么做。所以我希望它像

图标图标图标
图标图标图标
图标图标图标
等等......

foreach($sMenu as $row) {
    $sClass = ($row['id'] == $aPage['id']) ? ' class="ui-btn-active ui-btn-custom"' : ' class="ui-btn-custom"';
    $sIcon = ($row['icon'] != '') ? ' data-icon="' . $row['icon'] . '"' : '';

    $sSiteRoot = get('site-root');

    $row['url'] .= ($row['url'] == '') ? '' : '/';

    $url = $sSiteRoot . $row['url'];
    $url = str_replace('(', '%28', $url);
    $url = str_replace(')', '%29', $url);
    $url = str_replace("'", '%27', $url);
    $sNavigation2 .= '<td><img src=". $sIcon .' . $url . '"></td>';
}

最佳答案

有时,最简单的方法是让一个变量跟踪您运行此循环的次数。例如:

$i = 0;

然后,在循环内部,检查数字 $i 是否等于 2(在本例中。)

foreach($sMenu as $row) {

    // this is all your old code right here...

    if ($i == 2) { 
        // then add your </tr><tr> break or whatever...
        $i = 0;
    } else {
        $i++;
    }
}

然后,继续执行 foreach 循环。

这也可以使用 modulus operator 来完成作为编写此“换行符”检查的更简洁方法(如此处的其他答案所示。)

关于PHP foreach 表列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9050897/

相关文章:

php - CSS 类在 PHP 脚本后不起作用

php - 数据库提交后立即将内容附加到页面

php - PHP 中的clone()方法的预期返回是多少?

php - 两个表并集的行数增加的临时列

php - 如何匹配选择查询中的字符串数组?

javascript - 尝试在用户滚动时动态更改背景视频

php - 在 Wordpress 中加载表行的更多按钮

html - 我怎样才能逆转过渡?

javascript - 使用 .append()/.load() 放置的图像未采用应有的样式

mysql - LIKE 和 REGEXP 和有什么区别?