Php 显示类似时间线的行(今天、最后一天…)

Php 显示类似时间线的行(今天、最后一天…),php,mysql,Php,Mysql,我想这样显示mysql表的行: Today Row1 Row2 .... Last day Row1 Row2 ... Before last day Row1 Row2 ... 我的表上有日期列:(id、消息、日期) 像我给出的例子一样,显示结果的方法是什么 以下是我获得所需结果的方法: $sql = $mysql->query("SELECT * FROM messages"); $array = array(); while($rows = mysql_fetch_array(

我想这样显示mysql表的行:

Today
Row1
Row2
....

Last day
Row1
Row2
...

Before last day
Row1
Row2
...
我的表上有日期列:(id、消息、日期)

像我给出的例子一样,显示结果的方法是什么

以下是我获得所需结果的方法:

$sql = $mysql->query("SELECT * FROM messages");
$array = array();
while($rows = mysql_fetch_array($sql)) {
  //Get proper date for array
  $key = date('Y-m-d', strtotime($rows["date"]));

  $arr[$key] = $rows["message"];

}
var_dump($array);
我想知道是否有一种不使用数组的简单方法,或者任何其他方法


我的问题不在于如何得到今天,昨天。。。但是关于如何在我给出的示例中显示结构,并为每个日期(今天,昨天…)编写一个特定的行到
while循环中

很抱歉,它可能会重复。如果你稍微调整一下它。我在给你指路,你必须完成剩下的工作;)问题是在显示它的过程中,对于每一行,它们都会有一个标题“今天,昨天等…”,这是一个mysql请求,而不是每个日期,因为我有分页系统,所以我都会创建一个新的。您能按所需的顺序提供更多的日期名称吗?例如今天,最后一天,在最后一天之前,……下一天是哪一天?可能重复的不一样抱歉。如果你稍微调整一下它。我在给你指路,你必须完成剩下的工作;)问题是在显示它的过程中,对于每一行,它们都会有一个标题“今天,昨天等…”,这是一个mysql请求,而不是每个日期,因为我有分页系统,所以我都会创建一个新的。您能按所需的顺序提供更多的日期名称吗?例如今天,最后一天,在最后一天之前,……下一天是哪一天?