用户选择了日期,我得到该日期并再生成3个日期
$start_date = Carbon::parse($request->start_date);
$m1 = $start_date->addMonths(1);
$m3 = $start_date->addMonths(3);
$m6 = $start_date->addMonths(6);
然后我得到了比较日期所需的数据库值,如下所示
$model = Model::WhereDate('start_date','>',$request->start_date)->get();
我循环使用
$duration = 0;
foreach ($model as $value) {
if (Carbon::parse($value->start_date)->between($start_date, $m3) || Carbon::parse($value->end_date)->between($start_date, $m3)) {
$duration = 1;
}
if (Carbon::parse($value->start_date)->between($start_date, $m3) || Carbon::parse($value->end_date)->between($start_date, $m3)) {
$duration = 3;
}
if (Carbon::parse($value->start_date)->between($start_date, $m6) || Carbon::parse($value->end_date)->between($start_date, $m6)) {
$duration = 6;
}
}
有更好的方法吗?我不能像这样Carbon::parse($value->start_date)->between($start_date, $m6) || Carbon::parse($value->end_date)->between($start_date, $m6)
PS - 这不是为了获得日期之间的持续时间,而是在给定的日期范围内比较它们是否在该范围内。扭曲是比较日期也是范围日期。
如果有任何不清楚的部分,我为我的语言道歉;让我知道我会解释它