vadnica-logo
Editor Moj Blog Moje storitve O projektu Telegram O meni O meni

PHP Datum in Čas

PHP Datum in čas se uporablja za oblikovanje in nastavitev datuma in ure. Funkcija date() oblikuje časovni žig v bolj berljiv datum in čas. V nadaljevanju bomo videli primer, ki ponazarja tekočo uro z datumom, ki je napisana s pomočjo JavaScript, vendar je v njej uporabljen tudi PHP za nastavitev začetnega časa. Zahtevani oblikovni parameter funkcije date() določa, kako oblikovati rezultat. Med datumske znake lahko vnesemo tudi ločila, kot so poševnica (/), pika (.) ali vezaj (-).

PRIMER
REZULTAT
Tu bo prikazan rezultat...

Formatiranje znakov za funkcijo date()

Znakovni parametri določajo, katere komponente datuma in ure želimo izpisati ter v kakšni obliki:

  1. d: Predstavlja dan v mesecu z vodilnimi ničlami (od 01 do 31).
  2. m: Predstavlja mesec z vodilnimi ničlami (od 01 do 12).
  3. M: Predstavlja tekstovni mesec z besedo (kratica, tri črke, npr. Jan, Jun).
  4. Y: Predstavlja leto v celoti (štirimestno število, npr. 2026).
  5. l (mala L črka): Predstavlja polno tekstovno ime dneva v tednu (npr. Friday).
  6. H: 24-urni format ure z vodilnimi ničlami (od 00 do 23).
  7. h: 12-urni format ure z vodilnimi ničlami (od 01 do 12).
  8. i: Minute z vodilnimi ničlami (00 do 59).
  9. s: Sekunde z začetnimi ničlami (od 00 do 59).
  10. a: Male črke za dopoldanski in popoldanski čas (am ali pm).
  11. A: Velike črke za dopoldanski in popoldanski čas (AM ali PM).

PHP funkcije datuma in časa

Funkcije datuma in časa nam omogočajo pridobivanje podatkov neposredno s strežnika. Te nastavitve so odvisne od področne konfiguracije sistema. Pri delu s temi funkcijami moramo biti pozorni na poletni čas in prestopna leta.

REZULTAT
Najdeno: -
Ime funkcije Opis delovanja Primer (Koda za simulator)
checkdate() Preveri, ali so podani mesec, dan in leto veljaven gregorijanski datum (vrne true/false). var_dump(checkdate(2, 29, 2026)); // Leto 2026 ni prestopno
date() Oblikuje lokalni čas in datum glegde na podane znake za format. echo date("d.m.Y H:i:s");
date_add() Doda določen časovni interval (dneve, mesece, ure...) obstoječemu objektu DateTime. $d = date_create("2026-06-05"); date_add($d, date_interval_create_from_date_string("10 days")); echo date_format($d, "Y-m-d");
date_create() Ustvari in vrne nov DateTime objekt (privzeto na trenutni čas, če je prazen). $d = date_create("2026-12-25"); echo date_format($d, "d. M Y");
date_create_from_format() Ustvari nov DateTime objekt iz niza, ki ustreza točno določenemu poljubnemu formatu. $d = date_create_from_format("j-M-Y", "5-Jun-2026"); echo date_format($d, "Y-m-d");
date_date_set() Nastavi nov datum (leto, mesec, dan) na obstoječem DateTime objektu. $d = date_create(); date_date_set($d, 2026, 12, 31); echo date_format($d, "Y-m-d");
date_default_timezone_get() Vrne privzeti časovni pas, ki ga trenutno uporabljajo vse funkcije v skripti. echo date_default_timezone_get();
date_default_timezone_set() Nastavi privzeti časovni pas za celotno skripto (npr. Europe/Ljubljana). date_default_timezone_set("Europe/Ljubljana"); echo date("H:i");
date_diff() Izračuna in vrne razliko (interval) med dvema datumoma. $d1 = date_create("2026-06-01"); $d2 = date_create("2026-06-05"); $diff = date_diff($d1, $d2); echo $diff->format("%r%a dni");
date_format() Vrne oblikovan niz datuma iz objekta DateTime glede na podano obliko. $d = date_create(); echo date_format($d, "d. m. Y");
date_get_last_errors() Vrne tabelo z opozorili in napakami, ujetimi med razčlenjevanjem datuma. date_create("nepravilen-datum"); print_r(date_get_last_errors());
date_interval_create_from_date_string() Ustvari objekt DateInterval iz berljivega angleškega relativnega besedila. $int = date_interval_create_from_date_string("2 months + 5 days"); echo $int->format("%m mesecev, %d dni");
date_interval_format() Oblikuje in izpiše podatke o časovnem intervalu v določeno obliko. $int = date_interval_create_from_date_string("1 year"); echo date_interval_format($int, "%Y leto");
date_isodate_set() Nastavi datum na objektu z uporabo ISO standarda za tedne in dneve v tednu. $d = date_create(); date_isodate_set($d, 2026, 23, 1); echo date_format($d, "Y-m-d"); // Prvi dan 23. tedna v 2026
date_modify() Spremeni časovni žig objekta DateTime z relativnim nizom (npr. +1 day). $d = date_create("2026-06-05"); date_modify($d, "+1 month"); echo date_format($d, "Y-m-d");
date_offset_get() Vrne odmik časovnega pasu od UTC v sekundah za izbrani datum. $d = date_create(); echo date_offset_get($d) / 3600 . " ur";
date_parse() Razčleni poljuben datumski niz v podrobno asociativno tabelo z vsemi komponentami časa. print_r(date_parse("2026-06-05 15:30:00"));
date_parse_from_format() Razčleni datumski niz v tabelo glede na točno določen vhodni format. print_r(date_parse_from_format("Y.m.d", "2026.06.05"));
date_sub() Odšteje določen časovni interval (dneve, mesece...) od objekta DateTime. $d = date_create("2026-06-05"); date_sub($d, date_interval_create_from_date_string("5 days")); echo date_format($d, "Y-m-d");
date_sun_info() Vrne tabelo z informacijami o sončnem vzhodu, zahodu in mraku za določeno lokacijo in čas. print_r(date_sun_info(time(), 46.0569, 14.5058)); // Koordinate za Ljubljano
date_time_set() Nastavi nov čas (ura, minuta, sekunda) na obstoječem DateTime objektu. $d = date_create(); date_time_set($d, 20, 15, 0); echo date_format($d, "H:i:s");
date_timestamp_get() Vrne Unix časovni žig (število sekund od 1970) iz objekta DateTime. $d = date_create(); echo date_timestamp_get($d);
date_timestamp_set() Nastavi datum in čas na objektu DateTime s pomočjo Unix časovnega žiga. $d = date_create(); date_timestamp_set($d, 1770123456); echo date_format($d, "Y-m-d H:i:s");
getdate() Vrne asociativno tabelo s podrobnimi informacijami o trenutnem ali podanem Unix časovnem žigu. print_r(getdate());
gettimeofday() Vrne trenutni sistemski čas kot tabelo s sekundami, mikrosekundami in odmiki. print_r(gettimeofday());
gmdate() Deluje enako kot funkcija date(), vendar vrne čas v GMT/UTC časovnem pasu (brez lokalnega odmika). echo gmdate("Y-m-d H:i:s");
gmmktime() Vrne Unix časovni žig za datum, ki je podan neposredno v GMT časovnem pasu. echo gmmktime(0, 0, 0, 6, 5, 2026);
idate() Oblikuje del lokalnega časa ali datuma in ga vrne strogo kot celo število (int). echo idate("Y"); // Vrne npr. 2026 kot celo število
localtime() Vrne lokalni čas v obliki indeksirane ali asociativne tabele (v stilu C jezika). print_r(localtime(time(), true));
microtime() Vrne trenutni Unix časovni žig skupaj z mikrosekundami (idealno za merjenje hitrosti kode). echo microtime(true);
mktime() Izračuna in vrne Unix časovni žig za podane lokalne parametre časa. echo mktime(15, 30, 0, 6, 5, 2026);
strtotime() Pretvori angleški opis relativnega časa v ustrezen Unix časovni žig. echo strtotime("+1 week 2 days");
time() Vrne trenutni čas strežnika v obliki Unix časovnega žiga (skupno število sekund). echo time();
timezone_abbreviations_list() Vrne izjemno podrobno tabelo z vsemi svetovnimi kraticami časovnih pasov in njihovimi podatki. print_r(timezone_abbreviations_list()["cet"]); // Primer za Srednjeevropski čas
timezone_identifiers_list() Vrne indeksirano tabelo z vsemi uradno priznanimi identifikatorji časovnih pasov na svetu. print_r(timezone_identifiers_list());
timezone_location_get() Vrne lokacijske podatke (koordinate, država) za določen objekt DateTimeZone. $tz = timezone_open("Europe/Ljubljana"); print_r(timezone_location_get($tz));
timezone_name_from_abbr() Vrne polno ime časovnega pasu na podlagi njegove kratice in odmika. echo timezone_name_from_abbr("CET");
timezone_name_get() Vrne ime (identifikator) časovnega pasu iz predhodno ustvarjenega objekta DateTimeZone. $tz = timezone_open("Europe/Ljubljana"); echo timezone_name_get($tz);
timezone_offset_get() Vrne trenutni odmik časovnega pasu od GMT v sekundah za izbrani objekt. $tz = timezone_open("Europe/Ljubljana"); echo timezone_offset_get($tz, date_create());
timezone_open() Ustvari in vrne nov objekt DateTimeZone na podlagi podanega imena pasu. $tz = timezone_open("America/New_York"); var_dump($tz);
timezone_transitions_get() Vrne podroben seznam vseh prehodov časovnega pasu (npr. premiki na zimski/poletni čas). $tz = timezone_open("Europe/Ljubljana"); print_r(timezone_transitions_get($tz, time(), time()+31536000));
timezone_version_get() Vrne trenutno različico uradne baze podatkov o časovnih pasovih (timezonedb), nameščene na strežniku. echo timezone_version_get();