18

UTC タイムスタンプが与えられた PHP では、正確に N 年を追加したいと考えています。これには、うるう年を考慮する必要があります。

ありがとうございました。

4

4 に答える 4

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

必要に応じて「+2 年」を置き換えます。

参照: http://php.net/manual/en/function.strtotime.php

于 2011-03-02T20:15:11.163 に答える
8
$date = new DateTime();
$date->add(new DateInterval('P10Y'));

10Y「今日」に10 年 ( ) を加算します。ただし、DateTime は PHP 5.3 のみです。

于 2011-03-02T20:15:15.810 に答える
1
$date    = "1998-08-14";

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

echo $newdate;

エコー

2000-08-14
于 2013-12-06T11:30:11.887 に答える
1

これを行うときに考慮すべきことが1つあります。

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

これは合計 2 年 (720 日または 721 日) になります。同じ日と月を保持し、タイムスタンプにさらに 2 年を追加したい場合

mktime を使用する必要があります。

$timestamp = mktime(0, 0, 0, $month, $day, $year+2);`
于 2012-07-05T14:04:16.813 に答える