DateTimeImmutable::setDate

日付を設定する

説明

public DateTimeImmutable DateTimeImmutable::setDate(int $year, int $month, int $day)

DateTimeImmutable オブジェクトの現在の日付を、指定された日付にします。 指定した日付を設定した、新しい DateTimeImmutable オブジェクトを返します。

パラメータ

object

手続き型のみ: date_create が返す DateTime オブジェクト。 この関数は、このオブジェクトを変更します。

year

その日付の年。

month

その日付の月。

day

その日付の日。

戻り値

変更されたデータを持つ、新しい DateTimeImmutable オブジェクトを返します。

例1 DateTimeImmutable::setDate の例

オブジェクト指向型

<?php
$date = new DateTimeImmutable();
$newDate = $date->setDate(2001, 2, 3);
echo $newDate->format('Y-m-d');
?>

上の例の出力は以下となります。

2001-02-03

例2 範囲を超えた値が親の値に加算される例

<?php
$date = new DateTimeImmutable();

$newDate = $date->setDate(2001, 2, 28);
echo $newDate->format('Y-m-d') . "\n";

$newDate = $date->setDate(2001, 2, 29);
echo $newDate->format('Y-m-d') . "\n";

$newDate = $date->setDate(2001, 14, 3);
echo $newDate->format('Y-m-d') . "\n";
?>

上の例の出力は以下となります。

2001-02-28
2001-03-01
2002-02-03

参考

  • DateTimeImmutable::setISODate
  • DateTimeImmutable::setTime