在laravel php中添加碳日期

时间:2018-05-25 12:22:14

标签: php laravel php-carbon

我有两个碳约会,我想将两者加在一起,我怎样才能实现这一目标?我正在使用Laravel框架

$date1 = \Carbon\Carbon::createFromFormat('H:i:s', $status_info->filed_ete)->addMinutes(15)

date two is in this variable of date_two
date_two = $status_info->filed_departuretime

如何将date1和date_two一起添加,谢谢

1 个答案:

答案 0 :(得分:0)

将日期添加到另一个日期是没有意义的(例如,6月5日和7月4日相等?)。

但是,您可以将日期间隔添加到日期(或间隔的间隔)。

换句话说:

  • 日期+日期间隔=日期
  • 日期间隔+日期间隔=日期间隔
  • 日期+日期=没有意义

所以,基本上,要注意哪些是日期,哪些是间隔。我猜你真正的意思是将两个不同的日期比作一些参考日期(比如现在)。

Laravel中的碳示例:

// this is a date
// [now() is a Laravel helper that is the same as Carbon::now()]
$now = now();

// this is an interval
$departs_in_minutes = $now->diffInMinutes($departure_time);

// this is also an interval
$travel_minutes = $departure_time->diffInMinutes($arrival_time);

// this is adding an interval to a date
// which results in a date
$expected_time = now()->addMinutes($departs_in_minutes + $travel_minutes + 15);

请参阅http://carbon.nesbot.com/docs/#api-difference

旁注:与Carbon有“陷阱”,因为它基于PHP的DateTime类而不是 DateTimeImmutable。因此,在向日期添加间隔时必须小心。它会将间隔添加到原始对象,在进程中对其进行修改,而不是像某些人预期的那样返回该对象的副本。要解决此问题,请在适当的时候使用Carbon的copy()方法。