ToolsKitHub

Конвертация временной метки

Текущая Unix-временная метка (секунды)
Временная метка

Что такое Unix-временная метка?

Unix-временная метка - это количество секунд, прошедших с 1 января 1970 года (UTC/GMT полночь), без учета секунд с учетом високосности.

Человекопонятное времясекунды(-ы)
1 час3600
1 день86400
1 неделя604800
1 месяц (30,44 дня)2629743
1 год (365,24 дня)31556926

Что произойдет 19 января 2038 года?

Из-за переполнения 32-битного числа, в этот день Unix-временная метка перестанет работать. До этого момента миллионы приложений должны принять новые конвенции временных меток или перейти на 64-битные системы, которые 'купят больше' временных меток.

Получение Unix-временной метки на различных языках программирования

ЯзыкКод
JavaScript
Math.round(new Date() / 1000)
Python
import time time.time()
Ruby
Time.now.to_i
Go
import ('time') int64(time.Now().Unix())
Java(pure)
System.currentTimeMillis() / 1000
Java(joda)
DateTime.now().getMillis() / 1000
Java >= 8
Instant.now().getEpochSecond()
Swift
Date().timeIntervalSince1970
C
#include <sys/time.h> struct timeval tv; gettimeofday(&tv, NULL);
Objective-C
[[NSDate date] timeIntervalSince1970]
MySQL
SELECT unix_timestamp(now())
SQLite
SELECT strftime('%s', 'now')
PHP
<?php pure php time();
Erlang
calendar:datetime_to_gregorian_seconds(calendar:universal_time())-719528*24*3600.
Shell
date +%s
Groovy
(new Date().time / 1000).longValue()
Lua
os.time()
.NET/C#
DateTimeOffset.UtcNow.ToUnixTimeSeconds();
Dart
(new DateTime.now().millisecondsSinceEpoch / 1000).truncate()