我有一个提交列表,每个列表都有自己的date_added,我每天都在运行cron,并检查date_added是否>= 30天。我每天都在寻找正确的日期检查(cron),所以如果date_added>= 30天,那么必须发生一些事情。日期格式: 2019-12-14 08:38:09我的代码:$afterMonth = date("Y-m-d H:i:s", strtotime("+1 months"));查询比较:$query->where($db->quoteName('last_updated') . ' >= ' . $db->quote($afterMonth));我只是在测试<=,它工作得很好,但不知道如何测试>=或者它是否有效。建议我更好的代码,请因为我在php方面不强。
1 回答
烙印99
TA贡献1829条经验 获得超13个赞
将日期逻辑放在 SQL 中,您不需要以下行:
$afterMonth = date("Y-m-d H:i:s", strtotime("+1 months"));
更改您的子句:where
$query->where($db->quoteName('last_updated') . ' >= DATE_SUB(CURDATE(), INTERVAL 30 DAY');
我们使用 SQL 函数从给定日期中减去时间跨度。我们用于获取当前日期,然后设置要减去的时间跨度。DATE_SUB()
CURDATE()
INTERVAL 30 DAY
您也可以只使用:
$query->where($db->quoteName('last_updated') . ' >= DATE_SUB(CURDATE(), INTERVAL 1 MONTH)');
有关此功能的更多信息,请单击此处
- 1 回答
- 0 关注
- 115 浏览
添加回答
举报
0/150
提交
取消