DateTime-luokan setDate-metodi

Metodi setDate muuttaa päivämäärää DateTime-oliossa. Se ottaa vastaan kolme parametria: vuosi (kokonaisluku), kuukausi (kokonaisluku 1-12) ja päivä (kokonaisluku 1-31). Palauttaa muokatun DateTime-olion.

Syntaksi

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

Esimerkki

Asetetaan uusi päivämäärä 15. maaliskuuta 2023:

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

Koodin suorituksen tulos:

php'2023-03-15'

Esimerkki

Automaattinen virheellisten päivämäärien korjaus (32. tammikuuta muunnetaan 1. helmikuksi):

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

Koodin suorituksen tulos:

php'2023-02-01'

Esimerkki

Päivämäärän asettaminen negatiivisilla arvoilla (siirtyminen edelliseen vuoteen):

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

Koodin suorituksen tulos:

php'2022-11-15'

Katso myös

  • funktion checkdate,
    joka tarkistaa päivämäärän oikeellisuuden
  • funktion date,
    joka muotoilee annetun päivämäärän
  • funktion modify,
    joka muuttaa päivämäärää suhteellisen muotoilumerkkijonon avulla