如何缩短PHP行?

如何缩短PHP行?,php,loops,count,alternate,Php,Loops,Count,Alternate,我有一个循环,它将计算输出: while ($wp_query->have_posts()) : $wp_query->the_post(); $current++; $current2++; 然后,要调用适当的html类,我的设计需要以下内容: <div class="span4 <?php if($current == 0) { echo 'first'; } elseif($current == 1) { echo 'second'; } elseif($curr

我有一个循环,它将计算输出:

while ($wp_query->have_posts()) : $wp_query->the_post(); $current++; $current2++;
然后,要调用适当的html类,我的设计需要以下内容:

<div class="span4 <?php if($current == 0) { echo 'first'; } elseif($current == 1) { echo 'second'; } elseif($current == 2) { echo 'first'; } elseif($current == 3) { echo 'second'; } ?>" id="<? echo $current; ?>">

$count从0开始,$count2从1开始。输出应该是这样的:如果0=第一,1=第二,2=第一,3=第二等等。如何在不限制$count的情况下缩短此表达式?我希望我的问题是清楚的。谢谢你在这里帮助我。

如果我理解你在这里的要求,我想你想用“一等”和“二等”来替换你的div

因此,可以使用%模运算符,请参见


如果我理解你的要求,我想你想用“一等”和“二等”来替换你的div

因此,可以使用%模运算符,请参见

这样试试

<div class="span4 
 <?php if ($curent%2 == 0){ echo 'first'; } 
  else {echo 'second';}?> id="<? echo $current; ?>"> 
这样试试

<div class="span4 
 <?php if ($curent%2 == 0){ echo 'first'; } 
  else {echo 'second';}?> id="<? echo $current; ?>"> 

因此,您可以使用mod-best来使用full,也可以使用mod-best来使用full,如果您只是将这些类名用于交替的CSS样式,那么使用CSS3有一种非常优雅的方法可以做到这一点

你的HTML

<div class="span4" id="<? echo $current; ?>">
对于PHP解决方案,Liam Wiltshire的答案应该很好


来源:

如果您只是在交替使用CSS样式时使用这些类名,那么使用CSS3有一种非常优雅的方法

你的HTML

<div class="span4" id="<? echo $current; ?>">
对于PHP解决方案,Liam Wiltshire的答案应该很好


来源:

Hi Steve,只要你知道元素的数量,它就可以工作-根据OP的问题,它应该适用于任何数量的if项。因此,如果$current%2==0,你就可以使用它{$html_clips='first';很抱歉我错过了你之前的答案-很好!投票表决通过了。嗨,史蒂夫,只要你知道元素的数量,这就行了-根据OP的问题,它应该适用于任何数量的if项。因此,如果$current%2==0,你可以使用{$html_clips='first';很抱歉我错过了你之前的答案-很好!投票表决通过了。
.span4:nth-child(even) {background: #CCC}
.span4:nth-child(odd) {background: #FFF}