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

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

Спасибо.

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

Замените «+2 года» по мере необходимости.

ref: http://php.net/manual/en/function.strtotime.php

 $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 ( 'Ymj' , $newdate ); echo $newdate; 

вторит

 2000-08-14