Претворач на Unix временска ознака
Претворете Unix временски ознаки во секунди или милисекунди во читливи датуми во локално време, UTC и ISO 8601, а секој датум вратете го во epoch време.
Временска ознака → датум
- Локално време
- –
- UTC
- –
- ISO 8601
- –
Датум → временска ознака
- Секунди
- –
- Милисекунди
- –
Како да го користите претворачот на Unix временска ознака
- За да претворите временска ознака во датум, залепете epoch вредност како
1700000000или1700000000000. Алатката според големината на бројот препознава дали е во секунди или милисекунди. - Прочитајте го резултатот во вашата локална временска зона, во UTC и во формат ISO 8601.
- За обратната насока, внесете датум и време; алатката ја враќа соодветната epoch вредност и во секунди и во милисекунди.
- Погледнете ја моменталната временска ознака на врвот, која се ажурира во живо, кога ви треба „сега“ како epoch вредност.
Што е Unix временска ознака?
Unix временската ознака, наречена и epoch време или POSIX време, е бројот секунди што поминале од Unix епохата: 1 јануари 1970 во 00:00:00 UTC. На пример, 1700000000 одговара на 14 ноември 2023 во 22:13:20 UTC. Датумите пред 1970 се претставуваат со негативни броеви.
Временските ознаки се популарни кај програмерите бидејќи се еден број што не зависи од временски зони, летно сметање на времето или формати на датуми. Споредбата на два моменти е едноставно одземање, а подредувањето по време е едноставно нумеричко подредување. Ќе ги најдете во бази на податоци, лог датотеки, API одговори, JWT тврдења како exp и iat, метаподатоци на датотеки и планери налик на cron.
Имајте предвид дека Unix времето ги игнорира престапните секунди: секој ден брои точно 86.400 секунди. Тоа ја одржува аритметиката едноставна и затоа временската ознака не е строго броење на секоја физичка секунда од 1970.
Секунди наспроти милисекунди
Најчестиот извор на забуна е единицата. Традиционалните Unix системи, PHP, time.time() во Python и повеќето бази користат секунди, што денес дава 10-цифрен број. Date.now() во JavaScript, System.currentTimeMillis() во Java и многу JSON API користат милисекунди, што дава 13-цифрен број. Ако милисекундите ги протолкувате како секунди, завршувате десетици илјади години во иднината; ако секундите ги протолкувате како милисекунди, завршувате во јануари 1970. Оваа алатка ја гледа големината на бројот за автоматски да ја избере правилната единица, а при претворање на датум ги покажува и двете вредности за да ја копирате онаа што ја очекува вашиот систем.
Локално време, UTC и ISO 8601
Временската ознака идентификува еден прецизен момент, но тој момент се прикажува различно во зависност од временската зона. Локалниот резултат ја користи временската зона поставена на вашиот уред, додека UTC е универзалната референца што ја користат серверите и логовите. ISO 8601, како 2023-11-14T22:13:20.000Z, е недвосмислениот текстуален формат препорачан за размена на датуми меѓу системи; завршното Z значи UTC.
Проблемот на 2038 година
Многу постари системи го чуваат Unix времето како 32-битен цел број со знак, чија максимална вредност е 2.147.483.647. Таа граница се достигнува на 19 јануари 2038 во 03:14:07 UTC. Една секунда подоцна, таков бројач прелева во голем негативен број и се чита како датум во декември 1901. Современите оперативни системи, бази и јазици во голема мера преминаа на 64-битни вредности за време, што ја поместуваат границата милијарди години во иднината, но вградените уреди, наследените формати на датотеки и старите колони во бази сè уште може да бидат засегнати. Самиот JavaScript не е засегнат, бидејќи го чува времето како милисекунди во 64-битен број со подвижна запирка.
Приватност
Сите претворања се случуваат во вашиот прелистувач со неговите вградени функции за датум. Ниту една временска ознака или датум не се испраќа на сервер.
Често поставувани прашања
Како да знам дали мојата временска ознака е во секунди или милисекунди?
Избројте ги цифрите. Тековен датум има 10 цифри во секунди и 13 цифри во милисекунди. Алатката автоматски ја применува истата логика, врз основа на големината на бројот.
Зошто локалното време се разликува од UTC?
Двете го опишуваат истиот момент. Локалното време го применува поместувањето на временската зона на вашиот уред и правилата за летно сметање, додека UTC нема поместување. Ако споделувате време со луѓе на друго место, UTC или ISO 8601 избегнуваат недоразбирања.
Може ли Unix временската ознака да биде негативна?
Да. Негативните вредности претставуваат моменти пред 1 јануари 1970 UTC. На пример, -86400 е 31 декември 1969 во 00:00:00 UTC.
Дали Unix временската ознака содржи временска зона?
Не. Временската ознака е секогаш во однос на UTC и не носи информација за временска зона. Зоната е важна само кога ја прикажувате како календарски датум и време.
Дали моите системи ќе пропаднат во 2038?
Само ако го чуваат времето во 32-битен цел број со знак. Проверете постари бази, вградени фирмвери и бинарни формати на датотеки. Сè што користи 64-битно време е безбедно во догледна иднина.
Поврзани алатки
- UUID генератор Бесплатен UUID генератор за верзија 4 и верзија 7. Создајте до 1.000 одеднаш, со големи букви или без цртички, па копирајте или преземете како .txt.
- JSON форматер и валидатор Бесплатен JSON форматер и валидатор што улепшува, минифицира и проверува JSON во прелистувачот, со синтаксни грешки пријавени по ред и колона.