date_add

関数の概要

PHPの date_add 関数は、DateTime オブジェクトに指定した期間(日時差分)を加算するための関数です。これを使うことで、簡単に日付や時間を進めることができ、日付計算が必要な場面で非常に便利です。

パラメータの説明

  • datetime:加算したい対象の DateTime オブジェクト。
  • interval:加算する時間差を表す DateInterval オブジェクト。
    例えば、「P1D」は1日、「PT2H」は2時間を意味します。

戻り値

DateTime オブジェクトを返します。引数として渡した DateTime オブジェクト自体が変更されるため、戻り値は同じオブジェクトです。

使用例

基本的な使い方

<?php
$date = new DateTime('2024-06-01');
$interval = new DateInterval('P5D'); // 5日を表す
date_add($date, $interval);
echo $date->format('Y-m-d');
?>

2024年6月1日に5日間を加算し、2024-06-06が出力されます。

時間単位での加算

<?php
$date = new DateTime('2024-06-01 10:00:00');
$interval = new DateInterval('PT3H'); // 3時間を表す
date_add($date, $interval);
echo $date->format('Y-m-d H:i:s');
?>

10時から3時間加算して13時となり、「2024-06-01 13:00:00」と表示されます。

複数の単位をまとめて加算

<?php
$date = new DateTime('2024-06-01 10:00:00');
$interval = new DateInterval('P2DT4H30M'); // 2日4時間30分
date_add($date, $interval);
echo $date->format('Y-m-d H:i:s');
?>

2日4時間30分を加算し、「2024-06-03 14:30:00」となります。

関連する関数

  • date_subDateTime に時間を減算する
  • DateInterval:時間差分を表現するクラス
  • DateTime::addDateTime オブジェクトのメソッドとして時間加算を行う

まとめ

date_add はPHPで日付や時刻を簡単に加算できる便利な関数です。DateTimeDateInterval を組み合わせて使うことで、日付計算やスケジュール管理など実務でも役立ちます。加算したい期間はISO 8601形式の時間表記で指定するため、覚えておくと操作がスムーズです。ぜひ活用してください。