web-dev-qa-db-ja.com

PHP:タイムスタンプに年を追加する

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

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

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

必要に応じて「+ 2年」を交換してください。

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

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

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

8
Marc B

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

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

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

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

$timestamp = mktime(0, 0, 0, $month, $day, $year+2);`
1
George D.
$date    = "1998-08-14";

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

echo $newdate;

エコー

2000-08-14
0
asd