如果用于设置类别

时间:2014-03-27 15:12:33

标签: php class if-statement

我想将每个第一个和第二个tr设置为不同的类。 用我的代码我只得到"奇怪"在每一个tr。 有谁知道什么是错的?

 $rowCount = 0;
 if ($rowCount++ % 2 == 1 ) :
     echo "<tr class='even'>";
 else:
     echo "<tr class='odd'>";
 endif;

2 个答案:

答案 0 :(得分:2)

尝试这个(将$ rowCount设置保持在循环之外):

for($row = 0; $row < $rowTotal; $row++)
{
   echo "<tr class='".($row % 2 ? "even" : "odd")."'>";
}

答案 1 :(得分:1)

你的逻辑实现方向错误

$rowCount = 0;//This was always initializing your count to 0

结果总是添加奇数类

将其更改为:

for ($rowCount = 0;$rowCount<$total; $rowCount++) {
    if ($rowCount % 2 == 1 ) :
        echo "<tr class='even'>";
    else:
        echo "<tr class='odd'>";
    endif;
}

或者您只需使用ternary运算符

即可
for ($rowCount=0; $rowCount<$total; $rowCount++) {
    echo "<tr class='".($rowCount % 2 == 0 )?'odd':'even'."'>";
}