我想在php中24小时后显示一些东西怎么样?

时间:2011-12-19 20:27:42

标签: php mysql date

我想在24小时后显示一些东西。我怎样才能做到这一点?第一个日期保存在数据库中,另一个日期将在运行时获得。但是计算这24小时的公式是什么?

2 个答案:

答案 0 :(得分:1)

您可以获取日期差异:

SELECT 
    CASE 
        WHEN DATEDIFF(?, dateCol) <= 1 THEN 'go'
        ELSE 'no go'
    END CASE AS go_Or_No_Go
FROM yourtable 
WHERE <parameters here to get the date value you seek for in the db>

?可能是CURRENT_DATE或其他日期函数,具体取决于您在数据库中存储的日期类型,如下所示:

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

如果您想要提高速度,可以将其作为嵌入式SQL命令,函数或存储过程进行比较,以查看哪些运行速度最快,看到SQL非常静态,因为它不需要参数,也不需要任何参数PHP的解释,除了检查go_Or_No_Go是否等于gono go - 你甚至可以改为1或0,或任何2个不同的值,如:

WHEN DATEDIFF(?, dateCol) <= 1 THEN 1 -- or 'YES'
ELSE 0 -- or 'NO'

答案 1 :(得分:0)

SELECT * from foo WHERE datetime_column < DATE_SUB(NOW(), INTERVAL 24 HOUR)