$datetime = new DateTime('today');
$datetime->modify('+2 day');
$expired_tags = DB::table('tags')
->where('active', '=', 1)
->where('expiry_date', '=', $datetime)
->get();
我试图理解我该怎么问:
给我所有两天后就过期的标签。但以上似乎将小时、分钟和秒考虑在内......我只需要询问年,月,日并比较两个日期的这一方面。
好的,所以我想出了一个做我想做的事的好方法......
$starting_time = new DateTime('today');
$starting_time->modify('+1 day');
$ending_time = new DateTime('today');
$ending_time->modify('+1 day +23 hours +59 minutes +59 seconds');
$expired_tags = DB::table('tags')
->where('active', '=', 1)
->whereBetween('expiry_date', array($starting_time, $ending_time))
->get();
这将在下一个日历日的任何时间抓取所有有datetime
的记录! :)
$today = new DateTime('today');
$expired_tags = DB::table('tags')
->where('active', '=', 1)
->where('expiry_date', '>=', $today->modify('+1 day')->format('Y-m-d'))
->where('expiry_date', '<', $today->modify('+1 day')->format('Y-m-d'))
->get();