我是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),存储在Carbon的帮助下。当domain_ex_date远离当前日期时,行where('domain_ex_date','>',date('Y-m-d'))
会将记录全部记录下来。即2017-06-12> 2016-09-15获得全部记录。这里我想做的是,我想过滤并获得距离当前日期仅一周的唯一记录。我该怎么做呢 ?我尝试过subweek()和subdays(),但没有任何帮助。
我应该只在满足这个条件domain_ex_date - current date = 7
答案 0 :(得分:1)
您可以使用dotnet watch
:
strtotime()
答案 1 :(得分:1)
使用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);
答案 2 :(得分:0)
我用碳,这对我来说效果很好
$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();