Css 在表格的备用行上显示不同的样式(在循环中)

Css 在表格的备用行上显示不同的样式(在循环中),css,mysql,loops,html-table,Css,Mysql,Loops,Html Table,我正在用查询结果填充一个表,我希望行的样式是交替的,即或为I循环使用常规,您可以在I上使用模(这是%运算符)来查看它是否是2的倍数 在while循环中,您需要使用另一种递增器,可能只是在循环之前声明一种递增器,并在每次循环中递增: $i = 0; while (condition) { $class = (i%2 == 0) ? 'alt' : ''; echo '<tr class="' + $class + '">'; $i++; } $i=0; whi

我正在用查询结果填充一个表,我希望行的样式是交替的,即
为I
循环使用常规
,您可以在
I
上使用
(这是
%
运算符)来查看它是否是2的倍数

在while循环中,您需要使用另一种递增器,可能只是在循环之前声明一种递增器,并在每次循环中递增:

$i = 0;
while (condition) {
    $class = (i%2 == 0) ? 'alt' : '';
    echo '<tr class="' + $class + '">';
    $i++;
}
$i=0;
while(条件){
$class=(i%2==0)“'alt':”;
回声';
$i++;
}

警告:我不太会写PHP,请将上面的代码视为伪代码。如果不是直接正确的话,它应该非常接近工作状态。

正确,这取决于将来谁可能维护代码(许多代码不是按位的),以及表的长度/站点的加载程度。我认为这是一种可读性/性能权衡,但这取决于OP是否适合使用按位与模数。如果对他/她来说这两个都是希腊语,$i&1可能也一样好。是的,是的,尽管如果
$i%2
在PHP核心中被无声地优化为
$i&1
,我不会感到惊讶,这将使我的论点变得毫无意义:)
$i = 0;
while (condition) {
    $class = (i%2 == 0) ? 'alt' : '';
    echo '<tr class="' + $class + '">';
    $i++;
}