我从数据库表中显示数据,并且我可以很容易地循环2种背景颜色,但是如何扩展它以合并3个或可能4种背景颜色?PHP在while循环中循环显示3种背景颜色
目前我有两个CSS类的代码:
PHP的echo $ I ++%2? 'class =“even”':'class =“odd”';
非常感谢
我从数据库表中显示数据,并且我可以很容易地循环2种背景颜色,但是如何扩展它以合并3个或可能4种背景颜色?PHP在while循环中循环显示3种背景颜色
目前我有两个CSS类的代码:
PHP的echo $ I ++%2? 'class =“even”':'class =“odd”';
非常感谢
我能想到的最简单的方法是incorperate switch语句:
switch($i % 3)
{
case 0: echo 'class="even"'; break;
case 1: echo 'class="odd"'; break;
case 2: echo 'class="..."'; break;
}
好了,我的是只是冗长哈哈
使用类数组,并使用结果模数(余数)作为索引。
$classes = array("odd", "even", "odder", "more_even");
for ($i=0; $i < 10; $i++)
{
echo $classes[$i%4];
}
然后,您可以用数组的大小替换4以使其完全基于数组动态变化。
echo "<br>".$classes[$i%count($classes)];
这跟@Gazler的方法是一样的。但是,我正在使用while循环,因为你在谈论一个db-table(可能是MySQL?)。
$result = mysql_query($query);
$i = -1;
while ($row = mysql_fetch_array($result)) {
echo (($i++) % 2) ? 'odd' : 'even';
}
+1 for odder;)然而,你可能不想硬编码那4,只需要数组的数量。 – TJHeuvel
只是在输入该内容时才更改解决方案。只是想让4进一步明确发生了什么。我也重新编辑,把单词“odder”放回去。:) – Gazler