检查日期是否大于5年

问题描述 投票:0回答:1

我正在尝试找出达成目标的最佳方法。我正在遍历一些涉及一组日期的数据

foreach ($fields['dates'] as $key => $dates) {
    $fields['dates'][$key]['datestring'] = Carbon::createFromFormat(
        'dmY',
        $dates['datestring']
    );
    var_dump($fields['dates'][$key]['datestring']);
}

上面的var_dump产生类似下面的内容

object(Carbon\Carbon)#330 (3) { ["date"]=> string(26) "2019-08-08 12:41:00.000000" ["timezone_type"]=> int(3) ["timezone"]=> string(3) "UTC" } object(Carbon\Carbon)#328 (3) { ["date"]=> string(26) "1987-08-08 12:41:00.000000" ["timezone_type"]=> int(3) ["timezone"]=> string(3) "UTC" }

因此,在此之上,我创建了一个变量来确定至少一个日期是否超过5年。我还为今天创建了一个日期对象。

$moreThanFiveYears = false;
$now = Carbon::now();

现在我要弄清楚的是如何执行实际检查?当我尝试上述操作时,它抱怨是因为$now与我其他日期的格式不同。我曾尝试向其添加格式,但它仅生成类似20190219的内容,而不生成原始日期生成的其他数据。

所以如何循环显示所有日期以确保至少一个大于5年?

谢谢

laravel date laravel-5 php-carbon
1个回答
0
投票

尝试一下。

<?
$check_date = '2019-12-18 18:20:40';
if(strtotime($check_date)<strtotime('-5 year')){
 echo "YES";
}else{
echo "NO";
}
?>
© www.soinside.com 2019 - 2024. All rights reserved.