首页 > 解决方案 > 从给定的日期时间创建相同的时间差异

问题描述

我发现这两次的不同之处在于:

$expiry = new Carbon('Mar 21, 2019 17:40:00');
$create = new Carbon('2019-03-12 07:00:00');
$expiry->diffInSeconds($create);

我想从今天开始创建具有相同时间范围的新到期。到期需要采用完全相同的格式。

$new_expiry = new Carbon(date("Y-m-d H:i:s", time()));
$new_expiry->addSeconds($sec)->format('M d,Y H:i:s');

我弄错了new_expiry,有更好的代码来做到这一点吗?

标签: phpphp-carbon

解决方案


您应该使用::now()in 方法Carbon获取当前日期和时间实例。

$expiry = Carbon::createFromFormat('M d,Y H:i:s', 'Mar 21, 2019 17:40:00');
$create = Carbon::create(2019, 3, 12, 7, 0, 0);
$secs   = $expiry->diffInSeconds($create);

$new_expiry = Carbon::now()->addSeconds($secs)->format('M d,Y H:i:s');

推荐阅读