算术和变化模式

Arithmetic and changing pattern

我有一个连续打印项目的循环。每行包含 4 个项目。

所以每个偶数(0 和 2)都有特定的背景图片。参差不齐的(1和3)不一样

现在,对于下一行,我需要更改图案,以便 0 和 2 打印出之前用于 1 和 3 的背景图像。

我考虑过如果 ($i = 0 || 2 || 5 || 7 ...) { 但计划是最终可能会有 100 件物品。

当前代码:

$i = 0;
while ($query->have_posts()) { 
    $query->the_post();
    if ($i % 2 == 0) { 
        // print out dark image
    } else {
        // print out light image
    }
    $i++;
}

看起来你的模式每 8 次迭代重复一次

试试这个

if ($i % 8 < 4) { // 0 1 2 3
  if ($i % 2 == 0) {
    // dark
  }
  else {
    // light
  }
}
else { // 4 5 6 7
  if ($i % 2 == 0) {
    // light
  }
  else {
    // dark
  }
}