如何为我的有序列表添加不同的类

时间:2010-12-24 06:27:57

标签: php

我希望在循环时将left, center & right类添加到我的有序列表中。

代码

 <?php while ($fetch) { ?>
    <li>haha</li>
  <?php } ?>

结果应该是

<ul>
  <li class="left">haha</li>
  <li class="center">haha</li>
  <li class="right">haha</li>
  <li class="left">haha</li>
  <li class="center">haha</li>
  <li class="right">haha</li>
</ul>

让我知道

3 个答案:

答案 0 :(得分:1)

$cnt=0;
while ($fetch)
{
  switch ($cnt%3)
  {
    case 0 : $class = 'left'; break;
    case 1 : $class = 'center'; break;
    case 2 : $class = 'right'; break;
  }
  echo '<li class="', $class, '">haha</li>';
  ++$cnt;
}

答案 1 :(得分:1)

 <?php $classes = array("left","center","right");
    $i = 0;
    while ($fetch) { 
 ?>
    <li class="<?php echo $classes[$i++ % 3] ?>">haha</li>
  <?php } ?>

答案 2 :(得分:1)

我刚刚测试了以下代码并验证它产生了所需的输出:

<?php
$items = array('haha', 'haha', 'haha', 'haha', 'haha', 'haha');
$cssClasses = array('left', 'center', 'right');
echo "<ul>\n";
$i=0;
foreach ($items as $item) {
    echo "\t<li class=\"" . $cssClasses[$i++ % 3] . '">' . $item . "</li>\n";
}
echo "</ul>\n";
?>

输出结果为:

<ul>
    <li class="left">haha</li>
    <li class="center">haha</li>
    <li class="right">haha</li>
    <li class="left">haha</li>
    <li class="center">haha</li>
    <li class="right">haha</li>
</ul>