在 php 中引导 3 个循环中的 cols


Bootstrap 3 cols within loop in php

我想听听你对这段代码的看法,它确实有效。我正在构建一个循环,以便在使用 bootstrap2 的循环中将 3 个列排成一行。这是我的代码:

<div class="container">
    <!-- span4 -->
    <?php 
    $count = 0;
    for ($i = 0; $i < 8; $i++) : ?>
        <!-- end of row when $i values +2cols --> 
        <?php if ($i%3 == 0): $count = $i+2; ?>
            <div class="row">
        <?php endif ?>
                <div class="span4">
                    Col <?php echo $i ?>
                </div>
        <?php if ($count == $i): ?>
            </div>
        <?php endif ?>
    <?php endfor; ?>
</div>

我提出了一个$count来说明这是否是最后一个列,并在此时关闭该行。我已经看到了一些更简单的代码片段,据说可以工作,但没有。

提前谢谢。

我删除了计数变量并放置正确的模数。 在最后一个if语句上必须等于所需的列数减去 1 (-1):

<div class="container">
    <!-- span4 -->
    <?php 
    for ($i = 0; $i < 8; $i++) : ?>
        <!-- no more count var --> 
        <?php if ($i%3 == 0): ?>
            <div class="row">
        <?php endif ?>
                <div class="span4">
                    Col <?php echo $i ?>
                </div>
    <!-- here the equality will always be the nbr of cols minus 1, so 2 here --> 
        <?php if ($i%3 == 2): ?>
            </div>
        <?php endif ?>
    <?php endfor; ?>
</div>

我总是发现将所有内容包装在<div class='row'></div>然后在点击行尾时关闭并重新打开标签会更干净。如果只有 7 个项目,则您的解决方案可能会遇到问题,并且该行永远不会关闭。

我还删除了 $count var,不确定为什么在它存储与 $i 相同时使用它。

<div class="container">
    <div class='row'> 
        <?php for($i = 0; $i < 8; $i++): ?>
            <div class="span4">
                Col <?php echo $i ?>
            </div>
             <?php if ($i %3 == 0): ?>
                 </div><div class="row">
             <?php endif ?>
         <?php endfor ?>
    </div>
</div>