Časové razítko
Časové razítko je konkrétní datum a čas „otisknutý“ do digitálního záznamu nebo souboru. Ačkoli se toto slovo nejčastěji používá jako podstatné jméno, „časové razítko“ může být také sloveso. Například: „Tweet byl opatřen časovým razítkem 8. ledna 2021 v 10:44.“
Časová razítka jsou standardním způsobem ukládání dat a časů v počítačových systémech. Například operační systémy opatřují každý soubor časovým razítkem s datem a časem vytvoření a změny. Digitální fotoaparáty opatřují časovým razítkem každou pořízenou fotografii. Platformy sociálních sítí ukládají časové razítko ke každému příspěvku, například jako ve výše uvedeném příkladu s platformou Twitter.
Ačkoli jsou časová razítka univerzální, neexistuje univerzální formát časového razítka. Například programovací jazyk může používat jednu metodu, zatímco databáze může používat jinou. I operační systémy ukládají časová razítka různými způsoby. Například Windows používá standard ANSI a ukládá časová razítka jako počet sekund od 1. ledna 1601. Unix ukládá časová razítka jako počet sekund, které uplynuly od půlnoci 1. ledna 1970. Protože existuje několik různých formátů časových razítek, má většina moderních programovacích jazyků vestavěné funkce pro převod časových razítek.
Uložení časového razítka jako celého čísla je efektivní, protože vyžaduje minimum úložného prostoru. Při zobrazení je však nutné toto číslo převést do čitelného formátu času. MySQL má TIMESTAMP datový typ, který pohodlně ukládá časová razítka v následujícím formátu:
YYYY-MM-DD HH:MM:SS
MySQL ukládá časová razítka v UTC, které vychází z času v Anglii. Datum 16. ledna 2021 v 10:15:30 středoevropského času by se proto v databázi MySQL uložilo takto:
2021-01-16 16:15:30
Po převodu na časové razítko v Linuxu by toto datum a čas byly reprezentovány takto:
1610813730
Časová razítka mají také různou přesnost neboli podrobnost. V některých případech stačí sekundy, zatímco v jiných jsou potřeba milisekundy nebo dokonce nanosekundy. Výše uvedené časové razítko Linuxu by v milisekundách mělo hodnotu 1610813730000, což poskytuje přesnost na jednu tisícinu sekundy. Počítačové operace mohou vyžadovat časová razítka s ještě vyšší přesností. PHP obsahuje funkci microtime(), která poskytuje časové razítko v mikrosekundách s přesností na jednu miliontinu sekundy.
Otestujte své znalosti