而foreach正确的PHP

时间:2014-10-28 16:32:19

标签: php mysql foreach while-loop

需要帮助才能更正代码

$aaa = do_mysql_query("SELECT num FROM ticketnums WHERE ticketid = '".$coin['ticketid']."' ORDER BY num asc") or sqlerr(__FILE__, __LINE__);
$rows = array();
while($row = mysqli_fetch_assoc($aaa)) {
    $rows[] = $row['num'];
}

$array_numbers = explode("|", $coin['results']); // 31|22|65|9|5|10|55|51|21|63|33|67|4|45|50|19|62
 foreach($array_numbers as $keno_num) {
     foreach ($rows as $r){ // 7, 8 or 9 nums
        if($r == $keno_num){
         echo "<td class=\"table_my_tickets\"><font color=\"red\"><b>".$r."</b></font></td>"; 
       }else{
         echo "<td class=\"table_my_tickets\">".$r."</td>"; 
       }
    }
 }

打印我数字的问题导致*门票数量。 (数字结果= 17个数字)和(票数= 7,8或9)。

这需要7,8或9个数字,其中一些是红色的(如果数字== $ keno_num)

感谢您的正确

1 个答案:

答案 0 :(得分:2)

如果我正确阅读,你只需要一个循环,而不是两个嵌套循环。在伪代码中:

foreach($array_numbers as $keno_num) {
   if (in_array($keno_num, $rows)) {
      ... number is on results array, draw red number
   } else {
      ... no match, draw regular number
   }
}