Metoden setDate i DateTime-klassen

Metoden setDate endrer datoen i et DateTime-objekt. Den tar imot tre parametere: år (heltall), måned (heltall fra 1 til 12) og dag (heltall fra 1 til 31). Returnerer det modifiserte DateTime-objektet.

Syntaks

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

Eksempel

La oss sette en ny dato til 15. mars 2023:

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

Resultat av kjøring av koden:

php'2023-03-15'

Eksempel

Automatisk korreksjon av ugyldige datoer (32. januar konverteres til 1. februar):

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

Resultat av kjøring av koden:

php'2023-02-01'

Eksempel

Setting av dato med negative verdier (overgang til forrige år):

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

Resultat av kjøring av koden:

php'2022-11-15'

Se også

  • funksjonen checkdate,
    som sjekker korrektheten av en dato
  • funksjonen date,
    som formaterer en gitt dato
  • funksjonen modify,
    som endrer datoen ved hjelp av en streng i relativt format