如何在PHP排序

时间:2017-07-27 01:12:58

标签: php mysql sorting formatting

我不知道从哪里开始。我的代码是选择数据并根据两列进行排序。

<?php // Query member data from the database and ready it for display
$sql1 = mysql_query("SELECT id, Name, Age, Rank, Ring, Time FROM competitors ORDER BY Time  ASC, Ring + 0 ASC");
while($row1 = mysql_fetch_array($sql1)){
$name =$row1["Name"];
$age =$row1["Age"];
$rank=$row1["Rank"];
$ring1=$row1["Ring"];
$time1=$row1["Time"];
?>

然后显示数据,排序基于两列

<?php echo $time1; echo $ring1; ?>

它会显示这样的东西(是的,我知道我发布的代码实际上没有显示这个,但它只是一个概念)

响铃时间

1 10:00

1 10:00

1 10:00

1 11:00

1 11:00

1 11:00

我想知道如何在完成第一次排序之后插入水平规则。所以看起来更像是这样:

1 10:00

1 10:00

1 10:00

1 11:00

1 11:00

1 11:00

如果有任何其他排序,它也会在每次排序完成后显示。 对此有何建议?

1 个答案:

答案 0 :(得分:1)

跟踪上一个$time1,当它发生变化时,请插入<hr>

$lastTime = null;
while (/* whatever */) {
    // snip

    // check for null so as not to insert an <hr> for the first record
    if ($lastTime != null && $lastTime != $time1) {
        echo '<hr>';
    }
    $lastTime = $time1;

    // and so on
}