関数 date_sub
関数 date_sub は、日付オブジェクトから時間間隔を減算します。
最初のパラメータとして DateTime オブジェクト、2番目のパラメータとして DateInterval オブジェクトを受け取ります。
構文
date_sub(DateTime $object, DateInterval $interval);
例
指定した日付から 10 日を引きます:
<?php
$date = new DateTime('2025-06-15');
$interval = new DateInterval('P10D');
date_sub($date, $interval);
echo $date->format('Y-m-d');
?>
コードの実行結果:
'2025-06-05'
例
日付から 1 年と 2 ヶ月を引きます:
<?php
$date = new DateTime('2025-03-20');
$interval = new DateInterval('P1Y2M');
date_sub($date, $interval);
echo $date->format('Y-m-d');
?>
コードの実行結果:
'2024-01-20'
例
関数 date_create は DateTime オブジェクトを返します。
コードを部分的にOOP、部分的に関数型の混合スタイルに書き直すことができます:
<?php
$date = date_create('2025-03-20');
$interval = new DateInterval('P1Y2M');
date_sub($date, $interval);
echo date_format($date, 'Y-m-d');
?>
コードの実行結果:
'2024-01-20'