mktime
(PHP 4, PHP 5)
mktime — Získáť UNIXový timestamp pre dátum
Popis
Varovanie: Všimnite si zvláštne poradie argumentov, ktoré sa líši od poradia argumetov v regulérnom UNIXovom mktime() volaní a ktorá sama sebe dobre neumožňuje vynechávanie parametrov z prava do ľava (porzri nižšie). Je bežnou chybou miešať tieto hodnoty v skripte.
Vracia Unixový timestamp zodpovedajúci daným argumentom. Timestamp je long integer, ktorý obsahuje počet sekúnd medzi Unixovou Epochou (1. Január 1970) a určeným časom.
Argumenty sa môžu vynechať v poradí z prava do ľava; všetky argumenty takto vynechané budú nastavené na aktuálnu hodnotu, ktorá zodpovedá miestnemu dátumu a času.
is_dst môže byť nastavený na 1 ak je čas počas letného času, 0 ak nie je, alebo -1 (default) ak nie je známe, či je čas v letnom čase alebo nie. Ak nie je známy, PHP sa ho samo pokúša zistiť. Toto môže spôsobiť neočakávané (ale nie nesprávne) výsledky.
Note: is_dst bol pridaný v 3.0.10.
mktime() je užitočný pre aritmetizáciu dátumu a validáciu, nakoľko automaticky vypočíta správnu hodnotu pre vstup mimo-rozsah. Na príklad, každý z následujúcich riadkov vyprodukuje reťazec "Jan-01-1998".
Example#1 mktime() príklad
<?php
echo date ("M-d-Y", mktime (0,0,0,12,32,1997));
echo date ("M-d-Y", mktime (0,0,0,13,1,1997));
echo date ("M-d-Y", mktime (0,0,0,1,1,1998));
echo date ("M-d-Y", mktime (0,0,0,1,1,98));
?>
Note: Windows Žiadna záma verzia Windowsu nepodporuje záporné timestampy Preto rozsah platných rokov zahŕňa iba 1970 - 2038.
Posledný deň akéhokoľvek daného mesiaca je možné vyjadriť ako "0" deň ďalšieho mesiacah, nie -1 deň. Oba následujúce príklady vyprodukujú reťazec "The last day in Feb 2000 is: 29".
Example#2 Posledný deň budúceho mesiaca
<?php
$lastday = mktime (0,0,0,3,0,2000);
echo strftime ("Poslednym dnom vo Februari 2000 je: %d", $lastday);
$lastday = mktime (0,0,0,4,-31,2000);
echo strftime ("Poslednym dnom vo Februari 2000 je: %d", $lastday);
?>
Dátum s rokom, mesiacom a dňom rovnými nule sa považuje za nelegálny (inak sa bude považovať ako 30.11.1999, čo by bolo zvláštne správanie).