使用 Carbon 检查今天是否在开始日期和到期日期之间?

Dar*_*ber 2 laravel-5

我必须通过检查今天是否在开始日期和过期日期之间来检查优惠券是否有效。

我的开始日期和到期日期格式是01/12/2017

假设今天是21/06/2017

优惠券开始日期为19/06/2017,失效日期为23/06/2017

所以它应该导致Coupon is Active,无论今天是否小于优惠券开始日期和到期日期,它应该导致Coupon is Expired

到目前为止,我还没有找到任何使用 Carbon 将今天与开始日期和过期日期进行比较的教程。

几乎所有的教程都是这样的

$now = Carbon::now();

$end_date = Carbon::parse($request->input('end_date'));

$lengthOfAd = $end_date->diffInDays($now);
Run Code Online (Sandbox Code Playgroud)

那么我如何使用 Laravel 中的 Carbon 检查今天是否在开始日期和到期日期之间,并且今天是否小于开始日期和到期日期?

提前致谢。

Mar*_*boc 6

这是一个非常简单的任务Carbon,你所要做的就是调用betweenCarbon 的方法:

$now = Carbon::now();

$start_date = Carbon::parse($request->input('start_date'));

$end_date = Carbon::parse($request->input('end_date'));

if($now->between($start_date,$end_date)){
    echo 'Coupon is Active';
} else {
    echo 'Coupon is Expired';
}
Run Code Online (Sandbox Code Playgroud)

您可以向方法添加第三个参数以按照文档中所述between使用or equal

要确定当前实例是否位于其他两个实例之间,您可以使用恰当命名的 Between() 方法。第三个参数指示是否应该进行等于比较。默认值为 true,确定其是否在边界之间或等于边界。