【发布时间】:2011-07-07 13:38:58
【问题描述】:
在给定 UTC 时间戳的 PHP 中,我想精确地添加 N 年。这应该考虑闰年。
谢谢。
【问题讨论】:
标签: php date time timestamp leap-year
在给定 UTC 时间戳的 PHP 中,我想精确地添加 N 年。这应该考虑闰年。
谢谢。
【问题讨论】:
标签: php date time timestamp leap-year
$newTimestamp = strtotime('+2 years', $timestamp);
根据需要替换“+2 年”。
【讨论】:
N 替换2,并且$timestamp 包含正确的时间戳。在 Jeff 的代码中没有任何地方说 $timestamp = now。
$date = new DateTime();
$date->add(new DateInterval('P10Y'));
将 10 年 (10Y) 添加到“今天”。不过,DateTime 仅在 PHP 5.3 中提供。
【讨论】:
您在执行此操作时应该考虑的一件事。
$newTimestamp = strtotime('+2 years', $timestamp);
这加起来是 2 年(720 或 721 天)。如果您只想保持相同的日期和月份并在时间戳中添加额外的 2 年
你必须使用 mktime。
例子
$timestamp = mktime(0, 0, 0, $month, $day, $year+2);`
【讨论】:
$date = "1998-08-14";
$newdate = strtotime ( '+2 years' , strtotime ( $date ) ) ;
$newdate = date ( 'Y-m-j' , $newdate );
echo $newdate;
回声
2000-08-14
【讨论】: