dsi36131 2014-02-11 02:29
浏览 18
已采纳

将变量匹配到循环中的每个第4个数字 - PHP

I am needing to add a different class at the end of every 4th item that I am looping through. I have done so by:

$i=0;
foreach($mount as $m){
    $i++;
    $startClass = '';
    if($i==4||$i==8||$i==12){$startClass='<div with class>';} //adds class on 4th intervals
    $ret.=''.$startClass.'<other HTML here and such>'; //shorted for readability
}

Now I'm sure there is a more appropriate way to handle this given the fact that if my loop contains 40 objects, I'll need to adjust the if statement accordingly.

I'm recalling an arithmetic formula that might work [an = a1+(n-1)d] but I'm finding that my idea seems off. I apply it (replacing an with i) and it will always = to the equation, thus each item gets the class.

Any suggestions? Thanks in advance!

  • 写回答

4条回答 默认 最新

  • dqu94359 2014-02-11 02:32
    关注

    Use the modulus operator http://www.php.net/manual/en/language.operators.arithmetic.php

    if(($i % 4) === 0){
      //add class
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?