在我的数据库中,我有一个表,我保留了注册用户。 一列是注册日期,我将此值保留为我自己的字符串格式。 例如“[2013-11-30] [19:42:46]”
然后我想做个检查。 如果用户是30天或更长时间。 可以肯定的是,上面的代码是错误的。 问题是,如果一个用户在2015年1月29日注册 如果当天是2015年2月2日,将不会在最后30天显示!
//Datetime
$today = date_parse_from_format("[Y-m-d] [H:i:s]", gmdate("[Y-m-d] [H:i:s]"));
$store = date_parse_from_format("[Y-m-d] [H:i:s]", $row["LastSeen"]);
if (
(($store[year] >= $today[year]) && ($store[month] >= $today[month]))
)
{ $date_last = "<font color='green'>".$row["LastSeen"]."</font>"; }
else
{ $date_last = "<font color='red'>".$row["LastSeen"]."</font>"; }
答案 0 :(得分:1)
使用date_create_from_format
代替date_parse_from_format
。然后您可以简单地比较结果值:
$today = date_create_from_format("[Y-m-d] [H:i:s]", gmdate("[Y-m-d] [H:i:s]"));
$store = date_create_from_format("[Y-m-d] [H:i:s]", $row["LastSeen"]);
if ($store < $today) {
// ...
}
else {
// ...
}