Udviklerressourcer og kodeeksempler
Her finder du kodeeksempler til arbejde med Unix-tidsstempler i forskellige programmeringssprog. Vaelg et sprog nedenfor:
Unix-tidsstempeluddrag efter sprog
Her finder du kodeeksempler til arbejde med Unix-tidsstempler i forskellige programmeringssprog. Vaelg et sprog nedenfor:
Relaterede værktøjer: Epoch Konverterer, Date Konverterer, Lokalitetskonverter, Vejledning til lokalitetskonvertering, Unix ms to Date, Tidszonekonverter
Ofte stillede spørgsmål
How do I get the current Unix timestamp in JavaScript? Use Math.floor(Date.now() / 1000) for Unix seconds or Date.now() for Unix milliseconds in JavaScript.
How do I convert epoch to datetime in Python, PHP, or SQL? Use the language-specific examples on this page to parse Unix timestamps into UTC or local datetime output for debugging, APIs, and database work.
What is the difference between Unix seconds and Unix milliseconds in code? Unix seconds are usually 10 digits and are common in backend systems. Unix milliseconds are usually 13 digits and are common in JavaScript, analytics, and browser events.
Hent aktuelt tidsstempel
// Get current Unix timestamp (seconds)
const timestampInSeconds = Math.floor(Date.now() / 1000);
console.log(timestampInSeconds);
// Get current Unix timestamp (milliseconds)
const timestampInMilliseconds = Date.now();
console.log(timestampInMilliseconds);
Konvertér tidsstempel til dato
// Convert Unix timestamp to date
const timestamp = 1609459200; // 2021-01-01 00:00:00 UTC
const date = new Date(timestamp * 1000);
console.log(date.toISOString()); // "2021-01-01T00:00:00.000Z"
console.log(date.toLocaleString()); // Localized format
Konvertér dato til tidsstempel
// Convert date string to Unix timestamp
const dateString = '2021-01-01T00:00:00Z';
const timestamp = Math.floor(new Date(dateString).getTime() / 1000);
console.log(timestamp); // 1609459200
// Convert Date object to Unix timestamp
const date = new Date(2021, 0, 1); // Note: months start at 0
const timestampFromDate = Math.floor(date.getTime() / 1000);
console.log(timestampFromDate);
Bemærk:
JavaScript's Date.now() returns milliseconds. Divide by 1000 for seconds.
Når du konverterer fra sekunder til et Date-objekt, skal du gange med 1000.
Hent aktuelt tidsstempel
import time
import datetime
# Get current Unix timestamp (seconds)
timestamp_seconds = int(time.time())
print(timestamp_seconds)
# Get current Unix timestamp (milliseconds)
timestamp_milliseconds = int(time.time() * 1000)
print(timestamp_milliseconds)
# Using datetime
dt = datetime.datetime.now()
timestamp_from_datetime = int(dt.timestamp())
print(timestamp_from_datetime)
Konvertér tidsstempel til dato
import time
import datetime
# Convert Unix timestamp to date
timestamp = 1609459200 # 2021-01-01 00:00:00 UTC
# Using time module
date_str = time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime(timestamp))
print(date_str) # '2021-01-01 00:00:00'
# Using datetime module
date_obj = datetime.datetime.fromtimestamp(timestamp, tz=datetime.timezone.utc)
print(date_obj.strftime('%Y-%m-%d %H:%M:%S')) # '2021-01-01 00:00:00'
Konvertér dato til tidsstempel
import datetime
# Convert date string to Unix timestamp
date_string = '2021-01-01 00:00:00'
date_obj = datetime.datetime.strptime(date_string, '%Y-%m-%d %H:%M:%S')
# Convert to timestamp (assumes local timezone)
timestamp = int(date_obj.timestamp())
print(timestamp)
# Explicitly specify UTC timezone
date_obj_utc = date_obj.replace(tzinfo=datetime.timezone.utc)
timestamp_utc = int(date_obj_utc.timestamp())
print(timestamp_utc)
Bemærk:
Python's time.time() returns floating-point seconds. Use int() for whole seconds.
For timezone handling, consider using the pytz library for more robust timezone support.
Hent aktuelt tidsstempel
import java.time.Instant;
public class TimestampExample {
public static void main(String[] args) {
// Get current Unix timestamp (seconds)
long timestampInSeconds = Instant.now().getEpochSecond();
System.out.println(timestampInSeconds);
// Get current Unix timestamp (milliseconds)
long timestampInMilliseconds = Instant.now().toEpochMilli();
System.out.println(timestampInMilliseconds);
// Traditional method
long currentTimeMillis = System.currentTimeMillis();
long timestampSeconds = currentTimeMillis / 1000L;
System.out.println(timestampSeconds);
}
}
Konvertér tidsstempel til dato
import java.time.Instant;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
public class TimestampToDateExample {
public static void main(String[] args) {
// Convert Unix timestamp to date
long timestamp = 1609459200L; // 2021-01-01 00:00:00 UTC
// Using Instant and formatter
Instant instant = Instant.ofEpochSecond(timestamp);
DateTimeFormatter formatter = DateTimeFormatter
.ofPattern("yyyy-MM-dd HH:mm:ss")
.withZone(ZoneId.of("UTC"));
String formattedDate = formatter.format(instant);
System.out.println(formattedDate); // "2021-01-01 00:00:00"
}
}
Konvertér dato til tidsstempel
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
public class DateToTimestampExample {
public static void main(String[] args) {
// Convert date string to Unix timestamp
String dateString = "2021-01-01 00:00:00";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
// Parse and convert to timestamp (assuming UTC)
LocalDateTime dateTime = LocalDateTime.parse(dateString, formatter);
ZonedDateTime zonedDateTime = dateTime.atZone(ZoneId.of("UTC"));
long timestamp = zonedDateTime.toEpochSecond();
System.out.println(timestamp); // 1609459200
}
}
Bemærk:
Java 8+ introduced the java.time package with better date/time handling.
Use Instant for UTC timestamps and ZonedDateTime for timezone-aware operations.
Hent aktuelt tidsstempel
<?php
// Get current Unix timestamp (seconds)
$timestampInSeconds = time();
echo $timestampInSeconds;
// Get current Unix timestamp (milliseconds)
$timestampInMilliseconds = round(microtime(true) * 1000);
echo $timestampInMilliseconds;
// Using DateTime class
$dateTime = new DateTime();
$timestampFromDateTime = $dateTime->getTimestamp();
echo $timestampFromDateTime;
?>
Konvertér tidsstempel til dato
<?php
// Convert Unix timestamp to date
$timestamp = 1609459200; // 2021-01-01 00:00:00 UTC
// Using date function (local timezone)
$dateFormatted = date('Y-m-d H:i:s', $timestamp);
echo $dateFormatted;
// Using gmdate for UTC
$dateFormattedUTC = gmdate('Y-m-d H:i:s', $timestamp);
echo $dateFormattedUTC; // "2021-01-01 00:00:00"
// Using DateTime class
$dateTime = new DateTime("@$timestamp");
$dateTime->setTimezone(new DateTimeZone('UTC'));
echo $dateTime->format('Y-m-d H:i:s');
?>
Konvertér dato til tidsstempel
<?php
// Convert date string to Unix timestamp
$dateString = '2021-01-01 00:00:00';
// Using strtotime (assumes local timezone)
$timestamp = strtotime($dateString);
echo $timestamp;
// Specify UTC timezone
$timestampUTC = strtotime($dateString . ' UTC');
echo $timestampUTC;
// Using DateTime class with timezone
$dateTime = new DateTime($dateString, new DateTimeZone('UTC'));
$timestamp = $dateTime->getTimestamp();
echo $timestamp; // 1609459200
?>
Bemærk:
PHP's time() returns seconds. Use microtime(true) for fractional seconds.
Be aware of timezone settings when using date() and strtotime() functions.
Hent aktuelt tidsstempel
package main
import (
"fmt"
"time"
)
func main() {
// Get current Unix timestamp (seconds)
timestampInSeconds := time.Now().Unix()
fmt.Println(timestampInSeconds)
// Get current Unix timestamp (milliseconds)
// UnixMilli() requires Go 1.17+, using UnixNano() for better compatibility
timestampInMilliseconds := time.Now().UnixNano() / int64(time.Millisecond)
fmt.Println(timestampInMilliseconds)
}
Konvertér tidsstempel til dato
package main
import (
"fmt"
"time"
)
func main() {
// Convert Unix timestamp to date
timestamp := int64(1609459200) // 2021-01-01 00:00:00 UTC
// Create time object
t := time.Unix(timestamp, 0)
// Format date (UTC)
fmt.Println(t.UTC().Format("2006-01-02 15:04:05"))
// Format date (local timezone)
fmt.Println(t.Format("2006-01-02 15:04:05"))
}
Konvertér dato til tidsstempel
package main
import (
"fmt"
"time"
)
func main() {
// Convert date string to Unix timestamp
dateString := "2021-01-01 00:00:00"
// Parse date string (assuming UTC)
// Go uses the reference time "2006-01-02 15:04:05" for time formatting layouts
t, err := time.Parse("2006-01-02 15:04:05", dateString)
if err != nil {
fmt.Println(err)
return
}
// Get Unix timestamp
timestamp := t.Unix()
fmt.Printf("Timestamp: %d\n", timestamp) // 1609459200
}
Bemærk:
Go bruger referencetiden "2006-01-02 15:04:05" til layout for tidsformatering.
Use time.Now().Unix() for seconds and time.Now().UnixMilli() for milliseconds (Go 1.17+).
Hent aktuelt tidsstempel
using System;
class Program
{
static void Main()
{
// Get current Unix timestamp (seconds)
DateTimeOffset now = DateTimeOffset.UtcNow;
long timestampInSeconds = now.ToUnixTimeSeconds();
Console.WriteLine(timestampInSeconds);
// Get current Unix timestamp (milliseconds)
long timestampInMilliseconds = now.ToUnixTimeMilliseconds();
Console.WriteLine(timestampInMilliseconds);
// Alternative method for older .NET versions
DateTime unixEpoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
TimeSpan timeSpan = DateTime.UtcNow - unixEpoch;
long timestampSecondsAlt = (long)timeSpan.TotalSeconds;
Console.WriteLine(timestampSecondsAlt);
}
}
Konvertér tidsstempel til dato
using System;
class Program
{
static void Main()
{
// Convert Unix timestamp to date
long timestamp = 1609459200; // 2021-01-01 00:00:00 UTC
// Using DateTimeOffset (.NET Standard 2.0+)
DateTimeOffset dateTimeOffset = DateTimeOffset.FromUnixTimeSeconds(timestamp);
Console.WriteLine(dateTimeOffset.ToString("yyyy-MM-dd HH:mm:ss")); // UTC
// Convert to local time
DateTimeOffset localTime = dateTimeOffset.ToLocalTime();
Console.WriteLine(localTime.ToString("yyyy-MM-dd HH:mm:ss")); // Local
}
}
Konvertér dato til tidsstempel
using System;
using System.Globalization;
class Program
{
static void Main()
{
// Convert date string to Unix timestamp
string dateString = "2021-01-01 00:00:00";
// Parse date string (assume UTC)
DateTime dateTime = DateTime.ParseExact(
dateString,
"yyyy-MM-dd HH:mm:ss",
CultureInfo.InvariantCulture,
DateTimeStyles.AssumeUniversal | DateTimeStyles.AdjustToUniversal);
// Convert to timestamp
DateTimeOffset dateTimeOffset = new DateTimeOffset(dateTime);
long timestamp = dateTimeOffset.ToUnixTimeSeconds();
Console.WriteLine($"Timestamp: {timestamp}"); // 1609459200
}
}
Bemærk:
Use DateTimeOffset for Unix timestamp operations in .NET Standard 2.0+.
Be careful with DateTimeKind when working with DateTime objects.
Hent aktuelt tidsstempel
# Get current Unix timestamp (seconds)
timestamp_seconds = Time.now.to_i
puts timestamp_seconds
# Get current Unix timestamp (milliseconds)
timestamp_milliseconds = (Time.now.to_f * 1000).to_i
puts timestamp_milliseconds
# Get current UTC timestamp
require 'time'
utc_timestamp = Time.now.utc.to_i
puts utc_timestamp
Konvertér tidsstempel til dato
require 'time'
# Convert Unix timestamp to date
timestamp = 1609459200 # 2021-01-01 00:00:00 UTC
# Create Time object (local timezone)
time = Time.at(timestamp)
puts time.strftime('%Y-%m-%d %H:%M:%S')
# Create UTC Time object
time_utc = Time.at(timestamp).utc
puts time_utc.strftime('%Y-%m-%d %H:%M:%S') # "2021-01-01 00:00:00"
# ISO 8601 format
puts time_utc.iso8601
Konvertér dato til tidsstempel
require 'time'
# Convert date string to Unix timestamp
date_string = '2021-01-01 00:00:00'
# Parse date string (local timezone)
time = Time.parse(date_string)
timestamp = time.to_i
puts timestamp
# Parse date string as UTC
time_utc = Time.parse(date_string + ' UTC')
timestamp_utc = time_utc.to_i
puts timestamp_utc # 1609459200
# More precise parsing
require 'date'
datetime = DateTime.strptime(date_string, '%Y-%m-%d %H:%M:%S')
timestamp_from_datetime = datetime.to_time.to_i
puts timestamp_from_datetime
Bemærk:
Ruby's Time.now.to_i returns seconds. Use (Time.now.to_f * 1000).to_i for milliseconds.
For complex timezone handling, consider using the tzinfo gem.
Hent aktuelt tidsstempel
-- MySQL
SELECT UNIX_TIMESTAMP() AS current_timestamp;
SELECT UNIX_TIMESTAMP(NOW(3)) * 1000 AS current_timestamp_ms;
-- PostgreSQL
SELECT EXTRACT(EPOCH FROM NOW()) AS current_timestamp;
SELECT EXTRACT(EPOCH FROM NOW()) * 1000 AS current_timestamp_ms;
-- SQLite
SELECT STRFTIME('%s', 'now') AS current_timestamp;
SELECT STRFTIME('%s', 'now') * 1000 AS current_timestamp_ms;
-- SQL Server
SELECT DATEDIFF(SECOND, '1970-01-01', GETUTCDATE()) AS current_timestamp;
SELECT DATEDIFF(MILLISECOND, '1970-01-01', GETUTCDATE()) AS current_timestamp_ms;
Konvertér tidsstempel til dato
-- MySQL
SELECT FROM_UNIXTIME(1609459200) AS datetime;
SELECT FROM_UNIXTIME(1609459200, '%Y-%m-%d %H:%i:%s') AS formatted_datetime;
-- PostgreSQL
SELECT TO_TIMESTAMP(1609459200) AS datetime;
SELECT TO_CHAR(TO_TIMESTAMP(1609459200), 'YYYY-MM-DD HH24:MI:SS') AS formatted_datetime;
-- SQLite
SELECT DATETIME(1609459200, 'unixepoch') AS datetime;
SELECT STRFTIME('%Y-%m-%d %H:%M:%S', 1609459200, 'unixepoch') AS formatted_datetime;
-- SQL Server
SELECT DATEADD(SECOND, 1609459200, '1970-01-01') AS datetime;
Konvertér dato til tidsstempel
-- MySQL
SELECT UNIX_TIMESTAMP('2021-01-01 00:00:00') AS timestamp;
-- PostgreSQL
SELECT EXTRACT(EPOCH FROM TIMESTAMP '2021-01-01 00:00:00') AS timestamp;
-- SQLite
SELECT STRFTIME('%s', '2021-01-01 00:00:00') AS timestamp;
-- SQL Server
SELECT DATEDIFF(SECOND, '1970-01-01', '2021-01-01 00:00:00') AS timestamp;
Bemærk:
Forskellige databasesystemer har forskellige funktioner til håndtering af tidsstempler.
Overvej altid tidszonekonsekvenser, når du arbejder med tidsstempler i databaser.
Hent aktuelt tidsstempel
' Get current Unix timestamp (seconds)
=INT((NOW()-DATE(1970,1,1))*86400)
' Get current Unix timestamp (milliseconds)
=INT((NOW()-DATE(1970,1,1))*86400*1000)
' Get timestamp for date in cell A1
=INT((A1-DATE(1970,1,1))*86400)
' Account for timezone (subtract 8 hours for UTC+8)
=INT((NOW()-DATE(1970,1,1)-TIME(8,0,0))*86400)
Konvertér tidsstempel til dato
' Convert Unix timestamp (seconds) to Excel date
' Assuming A1 contains the timestamp
=DATE(1970,1,1)+A1/86400
' Convert Unix timestamp (milliseconds) to Excel date
=DATE(1970,1,1)+A1/86400/1000
' Convert to local timezone (add 8 hours for UTC+8)
=DATE(1970,1,1)+A1/86400+TIME(8,0,0)
' Format as text
=TEXT(DATE(1970,1,1)+A1/86400,"yyyy-mm-dd hh:mm:ss")
VBA Functions
' Convert Unix timestamp to Excel date
Function UnixToExcelDate(UnixTimestamp As Long) As Date
UnixToExcelDate = DateAdd("s", UnixTimestamp, DateSerial(1970, 1, 1))
End Function
' Convert Excel date to Unix timestamp
Function ExcelDateToUnix(ExcelDate As Date) As Long
ExcelDateToUnix = DateDiff("s", DateSerial(1970, 1, 1), ExcelDate)
End Function
' Get current Unix timestamp
Function GetCurrentUnixTimestamp() As Long
GetCurrentUnixTimestamp = DateDiff("s", DateSerial(1970, 1, 1), Now)
End Function
' Usage examples:
' =UnixToExcelDate(1609459200)
' =ExcelDateToUnix(NOW())
' =GetCurrentUnixTimestamp()
Bemærk:
Excel stores dates as serial numbers, with 1970-01-01 being day 25569 in the 1900 date system.
Always consider timezone conversions when working with timestamps in Excel.
VBA functions provide more flexibility for complex timestamp operations.