如何在php laravel中检查日期是否早于3个月

z8dt9xmd  于 2021-10-10  发布在  Java
关注(0)|答案(4)|浏览(260)

我在这个变量中有一个日期

$start_date = '2021-03-04';

我想检查这个日期是否比当前日期早三个月我如何检查

if($start_date < 3 months ???)
{

}
9nvpjoqh

9nvpjoqh1#

你可以用 Carbon 要做到这一点:

$start_date = new Carbon\Carbon('2021-03-04');
if($start_date->diffInMonths() > 3)
{

}
cedebl8k

cedebl8k2#

您需要类似于:

$format = "y-m-d";
$start_date = \DateTime::createFromFormat($format, $start_date);
$end_date = \DateTime::createFromFormat($format, $start_date);
$end_date = $end_date->modify('+3 month');
if($start_date < $end_date)
{

}

我还没有测试代码,但是你可以得到一个想法。

h9a6wy2h

h9a6wy2h3#

您可以使用以下选项:

$start_date = '2021-03-04';

if($start_date < date('Y-m-d', strtotime('-3 months'))){

}
jogvjijk

jogvjijk4#

你可以用碳来做这个。

// parse your date as carbon date & only take the date string using toDateString
        $start_date = Carbon::parse('2021-03-04')->toDateString();

        // take the Today time, subtract 3 months from it & only take date string from it
        $today = Carbon::today()->subMonths(3)->toDateString();
        if ($start_date < $today) {
            // whatever you wanna do here
        }

注:碳添加时间戳,因此使用 toDateString() 忽略时间戳&日期字符串中的唯一因素

相关问题