(PHP 5 >= 5.5.0, PHP 7, PHP 8)
DateTimeImmutable::setDate — Define a data
Retorna um novo objeto DateTimeImmutable com a data atual do objeto DateTimeImmutable configurado com a data fornecida.
object
Somente no estilo procedural: Um objeto DateTime retornado por date_create(). A função modifica este objeto.
year
Ano da data.
month
Mês da data.
day
Dia da data.
Retorna um novo objeto DateTimeImmutable com os dados modificados.
Exemplo #1 Exemplo da função DateTimeImmutable::setDate()
Estilo orientado a objetos
<?php
$date = new DateTimeImmutable();
$newDate = $date->setDate(2001, 2, 3);
echo $newDate->format('Y-m-d');
?>
Os exemplos acima produzirão:
2001-02-03
Exemplo #2 Valores que excedem os limites são adicionados aos valores pai.
<?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";
?>
O exemplo acima produzirá:
2001-02-28 2001-03-01 2002-02-03