Sets the date

# DateTimeImmutable::setDate

(PHP 5 >= 5.5.0, PHP 7, PHP 8)

DateTimeImmutable::setDate — Sets the date

### 说明

#[\NoDiscard(message: "as DateTimeImmutable::setDate() does not modify the object itself")]
public function DateTimeImmutable::setDate(int `$year`, int `$month`, int `$day`): DateTimeImmutable

Returns a new DateTimeImmutable object with the current date of the DateTimeImmutable object set to the given date.

### 参数

`object`
  仅过程化风格：由 date_create() 返回的 DateTime 类型的对象。此函数会修改这个对象。
`year`

  Year of the date.

`month`

  Month of the date.

`day`

  Day of the date.

### 返回值

返回带有修改数据的新 DateTimeImmutable 对象。

### 示例

示例 #1 DateTimeImmutable::setDate() example

面向对象风格

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

以上示例会输出：

    2001-02-03

示例 #2 Values exceeding ranges are added to their parent values

    <?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() - Sets the ISO date
- DateTimeImmutable::setTime() - Sets the time

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open