# DateTimeImmutable::setDate

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

DateTimeImmutable::setDate — Définit la date

### Description

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

Retourne un nouvel objet DateTimeImmutable avec la date actuelle de l'objet DateTimeImmutable définit à la date donnée.

### Liste de paramètres

`object`

  Style procédural uniquement : Un objet DateTime retourné par la fonction date_create(). Cette fonction modifie cet objet.

`year`

  Année de la date.

`month`

  Mois de la date.

`day`

  Jour de la date.

### Valeurs de retour

Retourne un nouvel objet DateTimeImmutable avec les données modifiées.

### Exemples

Exemple #1 Exemple de DateTimeImmutable::setDate()

Style orienté objet

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

Les exemples ci-dessus vont afficher :

    2001-02-03

Exemple #2 Les valeurs excédant la plage sont ajouté à leur valeur parente

`<?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";
?>`

L'exemple ci-dessus va afficher :

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

### Voir aussi

- DateTimeImmutable::setISODate() - Définit la date ISO
- DateTimeImmutable::setTime() - Définit l'horaire