PHP李计数部门

时间:2012-05-15 13:10:30

标签: php mysql html

我有一个显示<li>的循环,我需要在第一个,然后每六个<li>

中添加一个类

示例:

while ($db_field = mysql_fetch_assoc($result)) {

    <li (if mod of 6 add class="something")>One</li>
    <li>Two</li>
    <li>Three</li>
    <li>Four</li>
    <li>Five</li>
    <li class="something">Six</li>
    <li>Seven</li>

}
...

2 个答案:

答案 0 :(得分:4)

使用modulus %运算符非常简单:

$counter = 0;
while ($r = mysql_fetch_assoc($res) {
    $isSixthsLi = (bool) (($counter++) % 6 == 0); 
    echo $isSixthsLi ? '<li class="something">' : '<li>';
    echo htmlentities($r['content']);
    echo '</li>';
}

($counter++) % 6表达式表示 $ counter的余数除以6,然后递增$ counter 。如果余数为零(对于0,6,12,...都是如此),则使用类名打印<li>,否则不打印。

答案 1 :(得分:1)

我认为这个列表是动态的,然后你可以使用

<?php 
 $i=0;
 foreach ($in as $v){  
        $i++;
        $class = (!$i%6) ? "something : "";  ?>
        <li class="<?=$class?>"><?=$v?></li>   

<?php } ?>  

注意:我使用了简写标记<?=,您可以使用<?php echo代替