Php 如何对MySQLi结果集进行分类?

Php 如何对MySQLi结果集进行分类?,php,arrays,mysqli,foreach,while-loop,Php,Arrays,Mysqli,Foreach,While Loop,我如何更改下面的代码,以便只回显每个唯一的“$course”一次 目前我的结果看起来像= 伊普斯维奇-11:00-正在运行 伊普斯维奇-12:00-火烈鸟骑士 伊普斯威奇-14:00-闪电 诺维奇13:10-ed回来了 诺维奇-14:05-redrum 诺维奇-17:05-pickle 但我希望他们看起来像= 伊普斯维奇 11:00-10:00 12:00-火烈鸟骑士 14:00-闪电 诺里奇 13:10-ed回来了 14:05-01红色 17:05-00泡菜 我曾考虑在for-each循环中执

我如何更改下面的代码,以便只回显每个唯一的“$course”一次

目前我的结果看起来像=

伊普斯维奇-11:00-正在运行 伊普斯维奇-12:00-火烈鸟骑士 伊普斯威奇-14:00-闪电 诺维奇13:10-ed回来了 诺维奇-14:05-redrum 诺维奇-17:05-pickle

但我希望他们看起来像=

伊普斯维奇

11:00-10:00 12:00-火烈鸟骑士 14:00-闪电

诺里奇

13:10-ed回来了 14:05-01红色 17:05-00泡菜

我曾考虑在for-each循环中执行mysqli查询,但肯定有更好的方法吗

我的代码=

<?php //connection block

if ($mysqli->connect_error) {die('Connect Error: ' . $mysqli->connect_error);}

$today = date("Ymd");
$query = "SELECT horse, course, time, date FROM dailytips WHERE date = $today ORDER BY course, time"; 
$result = $mysqli->query($query);

$today_uk = " " . date("d/m/y");

while($row = $result->fetch_array()) 
{ $rows[] = $row; }

echo "<h2>tips for" .$today_uk. "</h2>";

foreach($rows as $row) 
{ 
$date = $row['date'];
$date = date("d/m/y", strtotime($date));
$horse = $row['horse'];
$time = $row['time'];
$course = $row['course'];

echo  
'<div style= "width:600px; font-family:verdana;">
 <div style="float:left; width:400px; margin-bottom:10px; margin-top10px;">

        '.$row['course']. "-" .$row['time'] . "-" . $row['horse'] .'
 </div>' ;
}

$result->close();
$mysqli->close(); 

?>

我想你可以把foreach语句嵌套在另一个语句中

所以

$query=“从dailytips中选择课程,其中日期=$today按课程、时间排序”;
而($row=$result->fetch_array())
{$rows[]=$row;}
回声“提示”。$today\u uk。"";
foreach($行作为$行){
$query=“从dailytips中选择马、时间、日期,其中course=$row['course'];
而($row=$result->fetch_array())
{$rowDetail[]=$rowDetails;}
foreach($行作为$行){
$date=$row['date'];
$date=日期(“d/m/y”,标准时间($date));
$horse=$row['horse'];
$time=$row['time'];
$course=$row['course'];
回音
'
“.$row['course'].”-“$row['time'.”-“$row['horse'..”
' ;
}
}

我会考虑把你的结果放在一个与div相反的表中,因为这似乎符合你要做的更好的事情。在循环之前设置表并在循环退出后关闭。

我认为$Quy中的$ROL给了我TyPixDebug和AtWisteStError错误。
$query = "SELECT course, FROM dailytips WHERE date = $today ORDER BY course, time";
while($row = $result->fetch_array()) 
{ $rows[] = $row; }

echo "<h2>tips for" .$today_uk. "</h2>";

foreach($rows as $row) {
   $query = "SELECT horse, time, date FROM dailytips WHERE course = $row['course'];
   while($row = $result->fetch_array()) 
   { $rowDetail[] = $rowDetails; }

   foreach($rows as $row) { 
       $date = $row['date'];
       $date = date("d/m/y", strtotime($date));
       $horse = $row['horse'];
       $time = $row['time'];
       $course = $row['course'];

       echo  
          '<div style= "width:600px; font-family:verdana;">
          <div style="float:left; width:400px; margin-bottom:10px; margin-top10px;">

          '.$row['course']. "-" .$row['time'] . "-" . $row['horse'] .'
          </div>' ;
      }
   }