我是第一次接触laravel,我正在构建一个小应用程序,当事件日期与当前日期相距一周时发出警报。下面是我的控制器代码
public function index()
{
$domain_count = domain_details::get()->count();
$domain_alert = domain_details::
where('domain_ex_date','>',date('Y-m-d'))
->get();
}domain_ex_date的格式为(YYYY-mm-dd),由碳材料存储。当domain_ex_date不在当前日期时,where('domain_ex_date','>',date('Y-m-d'))这一行可以得到完整的记录。即2017-06-12 > 2016-09-15获得全部记录。这里我想要做的是,我想过滤并获得距离当前日期只有一周的记录。我该怎么做呢?我尝试过subweek()和subday(),但都没有用。
只有当记录满足此条件时,我才会获取该记录domain_ex_date - current date = 7
发布于 2016-09-15 13:51:14
您可以使用strtotime()
domain_details:: where('domain_ex_date','<',date('Y-m-d',strtotime("+7 days")))
-> where('domain_ex_date','>',date('Y-m-d'))
->get();发布于 2016-09-15 14:59:03
使用Carbon!Carbon是一个内建的日期扩展...试试看!:)
$week = Carbon::now()->addWeek();
$now = Carbon::now();
domain_details::where("domain_ex_date","<" $week)
->where("domain_ex_date", ">" $now)
->get()或者您也可以使用addDays($days)方法!
$week = Carbon::now()->addDays(7); 发布于 2016-09-15 15:57:35
我用的是碳,这对我很有效
$week = Carbon::now()->subWeek();
$now = Carbon::now();
$domain_count = domain_details::get()->count();
$domain_alert = domain_details::where("domain_ex_date",">", $week)
->where("domain_ex_date", "<" ,$now)
->get();https://stackoverflow.com/questions/39503734
复制相似问题