PHP: добавление лет в метку времени

В PHP с меткой времени UTC я хотел бы добавить ровно N количество лет. Это должно учитывать високосные годы.

Спасибо.

Ответы

Ответ 2

$date = new DateTime();
$date->add(new DateInterval('P10Y'));

добавляет 10 лет (10Y) к "сегодня". DateTime только в PHP 5.3.

Ответ 3

Одна вещь, которую вы должны учитывать, когда делаете это.

$newTimestamp = strtotime('+2 years', $timestamp);

Это составляет 2 года (720 или 721 день). Если вы хотите сохранить один и тот же день и месяц и добавить еще 2 года в метку времени

вам нужно использовать mktime.

Пример

$timestamp = mktime(0, 0, 0, $month, $day, $year+2);`

Ответ 4

$date    = "1998-08-14";

$newdate = strtotime ( '+2 years' , strtotime ( $date ) ) ;
$newdate = date ( 'Y-m-j' , $newdate );

echo $newdate;

вторит

2000-08-14