对while循环中的每个X项执行某些操作

Sol*_*olo 2 php while-loop

$i = 0;

while ($have_something) {

    if($i == 0 || $i == 3 || $i == 6 || $i == 9) {
        $color = 'black';
    }
    else {
        $color = 'white';
    }
    $i++;
}
Run Code Online (Sandbox Code Playgroud)

while循环中的项目计数是动态的并且变化规则时,此代码出现问题,当它可能有数百个项目时,这意味着该if语句将非常长.

如何克服这个问题,并"自动化"它,以便每个X项目都能发生一些事情,其余的事情没有硬编码$i计数?

Sir*_*rko 6

使用模数运算符%:

$i = 0;

while ($have_something) {

    if($i % 3 == 0 ) {
        $color = 'black';
    }
    else {
        $color = 'white';
    }
    $i++;
}
Run Code Online (Sandbox Code Playgroud)