Funkce date

Funkce date vypisuje datum v zadaném formátu. Prvním parametrem funkce přijímá formát, a druhým volitelným parametrem - časový okamžik ve formátu timestamp. Pokud druhý parametr není uveden - vezme se aktuální časový okamžik, pokud je uveden - tak zadaný.

Formát se zadává řídícími příkazy (anglickými písmeny), přičemž lze vkládat libovolné oddělovače mezi nimi (pomlčky, dvojtečku a tak dále).

Funkce přijímá následující příkazy (velká písmena se liší od obyčejných, věnujte pozornost):

Syntaxe

phpdate(string $format, ?int $timestamp = null): string

Příklady práce s date

php<?php
  // Všechny příklady jsou uvedeny pro datum 01.06.2013 ve 12.23.59, pondělí
  
  echo date('Y'); // vypíše '2013'
  echo date('y'); // vypíše '13'
  echo date('m'); // vypíše '06' - číslo měsíce
  echo date('d'); // vypíše '01' - číslo dne v měsíci
  echo date('j'); // vypíše '1'  - číslo dne v měsíci (bez nuly na začátku)
  echo date('w'); // vypíše '1'  - pondělí
  echo date('H'); // vypíše '12' - hodiny
  echo date('i'); // vypíše '23' - minuty
  echo date('s'); // vypíše '59' - sekundy
  
  echo date('d-m-Y'); // vypíše '01-06-2013'
  echo date('d.m.Y'); // vypíše '01.06.2013'
  echo date('H:i:s d.m.Y'); // vypíše '12:23:59 01.06.2013'
?>

Druhý parametr funkce date

Funkce date má druhý volitelný parametr, který přijímá časový okamžik ve formátu timestamp. Pokud předáte tento parametr, funkce date naformátuje nikoli aktuální časový okamžik, ale ten, který je předán druhým parametrem. Tento timestamp lze získat, kupříkladu, pomocí mktime (ale ne nutně):

php<?php
  echo date('d-m-Y', mktime(0, 0, 0, 12, 29, 13)); // vypíše '29-12-2013'
?>

Toho lze využít, abychom zjistili číslo dne v týdnu pro určité datum - jednoduše jej předáme druhým parametrem pomocí funkce mktime, a jako první parametr nastavíme řídící znak 'w':

php<?php
  // Zjistíme, který den v týdnu byl 29-12-2013:
  echo date('w', mktime(0, 0, 0, 12, 29, 13)); // vypíše '0' - neděle
?>

Viz také

  • funkci mktime,
    která vrací časový okamžik ve formátu timestamp