DateTimeクラスのsetDateメソッド

メソッドsetDateは、DateTimeオブジェクトの日付を変更します。このメソッドは3つのパラメータを取ります:年(整数)、月(1から12の整数)、日(1から31の整数)。変更されたDateTimeオブジェクトを返します。

構文

phppublic DateTime::setDate(int $year, int $month, int $day): DateTime

例

2023年3月15日の新しい日付を設定します:

php<?php
  $date = new DateTime();
  $date->setDate(2023, 3, 15);
  echo $date->format('Y-m-d');
?>

コード実行結果:

php'2023-03-15'

例

不正な日付の自動修正(1月32日は2月1日に変換されます):

php<?php
  $date = new DateTime();
  $date->setDate(2023, 1, 32);
  echo $date->format('Y-m-d');
?>

コード実行結果:

php'2023-02-01'

例

負の値を使用した日付の設定(前年への移行):

php<?php
  $date = new DateTime();
  $date->setDate(2023, -1, 15);
  echo $date->format('Y-m-d');
?>

コード実行結果:

php'2022-11-15'

関連項目

  • 日付の妥当性をチェックする関数checkdate
  • 指定された日付をフォーマットする関数date
  • 相対形式の文字列で日付を変更する関数modify