我想限制我的用户每15分钟只能(能够)发布一些内容。
因此,在我的SQL查询中,我选择NOW()
来获取当前日期和时间,以及用户的上次发布日期date_added
。我想比较两个日期,如果now()
和date_added
之间的差异小于15分钟,那么用户还无法发帖。如果它更大,他就可以。如果不到15分钟,那么我想要一条消息,比如'请等待x分钟和y秒'。所以我需要某种日期操作/比较。
我应该如何处理这个问题。在MySQL还是PHP?
答案 0 :(得分:2)
你可以简单地将mysql时间戳转换为php-date并从那里进行比较 $ time = date(“Y-m -d H:i:s”,$ mysqltime);
您会发现许多有用的摘录如何比较函数文档中的日期:http://php.net/manual/de/function.date.php
编辑:pozs anwser指甲......
答案 1 :(得分:1)
像
这样的东西 SELECT count(*) FROM posts WHERE last_post > DATE_SUB(NOW(), INTERVAL 15 minute);
答案 2 :(得分:1)
在MySQL中:DATE_ADD()
或DATE_SUB()
,然后进行比较。
在PHP中:DateTime->diff()
。