代码之家  ›  专栏  ›  技术社区  ›  BRAHMA

根据颜色数组中的while循环更改文本的颜色

  •  0
  • BRAHMA  · 技术社区  · 6 年前

    我想在while循环中运行forloop,以便能够相应地更改文本的颜色。这是我的密码

           $leftBrdColorArray = array("g-brd-blue-left", "g-brd-red-left", "g-brd-black-left", "g-brd-yellow-left");
            $rowCount = $runselectGameInfo -> num_rows; //3 is the count
             if($runselectGameInfo -> num_rows > 0){
               while($getGameInfo = $runselectGameInfo -> fetch_assoc()){
    
                 for($i = 0; $i <= $rowCount; $i++){
    
               Hello <div class="<?php echo $leftBrdColorArray[$i];?>">World</div>
             }
        }
    }
    

    但它打印了12次,而不是行数,即3次。

    1 回复  |  直到 6 年前
        1
  •  1
  •   Paulo Hgo    6 年前

    如果您每次只想打印不同的颜色,但不一定要打印全部4种颜色(每行),则应执行以下操作:

    $leftBrdColorArray = array("g-brd-blue-left", "g-brd-red-left", "g-brd-black-left", "g-brd-yellow-left");
    $arrsize = count($leftBrdColorArray);
            $rowCount = $runselectGameInfo -> num_rows; //3 is the count
             if($runselectGameInfo -> num_rows > 0){
               i=0;
               while($getGameInfo = $runselectGameInfo -> fetch_assoc()){
                 if($i > $arrsize - 1) $i = 0;
                 echo 'Hello <div class="$leftBrdColorArray[$i]">World</div>';
                 i++;
             }
        }
    

    这里的问题是,如果您的行数多于颜色。。。您必须对其进行管理并添加逻辑,以便在阵列范围内获得颜色。