我有一個提交列表,每個列表都有自己的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 關注
- 140 瀏覽
添加回答
舉報
0/150
提交
取消