Μετατροπέας Unix Timestamp
Εργαλείο διπλής μετατροπής Unix/Linux Timestamp σε ημερομηνία και ώρα, με σύγκριση σε πολλαπλές ζώνες ώρας.
Τρέχουσα ώρα
Μετατροπή χρονικής σφραγίδας σε ημερομηνία
Αποτέλεσμα μετατροπής(αυτόματο)
Μετατροπή ημερομηνίας σε χρονική σφραγίδα
Αποτέλεσμα μετατροπής(αυτόματο)
Εργαλείο μετατροπής πολλαπλών χρονικών σφραγίδων σε ημερομηνίες ώρας
Εργαλείο μετατροπής πολλαπλών χρονικών σφραγίδων σε ημερομηνίες ώρας
Εργαλείο μετατροπής πολλαπλών ημερομηνιών σε χρονικές σφραγίδες
Εργαλείο μετατροπής πολλαπλών ημερομηνιών σε χρονικές σφραγίδες
Οδηγίες χρήσης
Αυτό το εργαλείο χρησιμοποιείται για την ταχεία διπλή μετατροπή μεταξύ Unix timestamp και ημερομηνίας ώρας σε διαφορετικές σκηνές. Υποστηρίζει ακρίβεια σε δευτερόλεπτα και χιλιοστά του δευτερολέπτου και επιτρέπει την επιλογή της χρονικής ζώνης στόχου για σύγκριση και εμφάνιση. Παρέχει μετατροπείς μονής κάρτας και πολλαπλών καρτών. Η μετατροπή γίνεται αμέσως μόλις εισαχθεί το περιεχόμενο και τα αποτελέσματα ανανεώνονται αυτόματα κατά την αλλαγή χρονικής ζώνης. Επίσης, έχει ενσωματωμένες τις πρόσφατες χρονικές περιόδους και τις συχνές χρονικές διαστήματα για να καλύψουν τις ανάγκες ανάπτυξης και调试 καθώς και τις καθημερινές μετατροπές.
Χαρακτηριστικά του εργαλείου
- Μετατροπή αμέσως μόλις εισαχθεί το περιεχόμενο, υποστηρίζει την αυτόματη αναγνώριση timestamp σε δευτερόλεπτα/χιλιοστά του δευτερολέπτου
- Υποστηρίζει την επιλογή και την εμφάνιση παγκόσμιων χρονικών ζωνών: τρεις προβολές για τοπική, UTC και επιλεγμένη χρονική ζώνη
- Πολλαπλές κάρτες μετατροπέα για ευκολότερη μαζική σύγκριση
- Ανταλλακτικό περιβάλλον και φιλικό προς το πληκτρολόγιο, καλή προσβασιμότητα
- Έχει ενσωματωμένες τις πρόσφατες χρονικές περιόδους και τις συχνές χρονικές διαστήματα, μπορείτε να τα αντιγράψετε και να τα χρησιμοποιήσετε αμέσως
Τι είναι η χρονική σφραγίδα;
Ο Unix timestamp είναι ο συνολικός αριθμός δευτερολέπτων ή χιλιοστών του δευτερολέπτου που έχουν περάσει από τις 00:00:00 UTC της 1ης Ιανουαρίου 1970 (Unix Epoch).
Ο timestamp είναι ένας αριθμός που εκφράζει την ώρα, συνήθως με μονάδα το δευτερόλεπτο ή το χιλιοστό του δευτερολέπτου.
Το σημείο εκκίνησης του timestamp είναι οι 00:00:00 UTC της 1ης Ιανουαρίου 1970. Αυτή η ώρα ονομάζεται Unix epoch.
Ο timestamp χρησιμοποιήθηκε αρχικά στον λειτουργικό σύστημα Unix, οπότε συχνά ονομάζεται Unix timestamp.
Ο timestamp χρησιμοποιείται ευρέως στη προγραμματιστική και στην δικτύωση επικοινωνίας, ειδικά στην ανάπτυξη ιστοσελίδων.
Συνήθεις ακρίβειες: δευτερόλεπτα (π.χ. 1735689600) και χιλιοστά του δευτερολέπτου (π.χ. 1735689600000). Κατά την αναπαράσταση της ημερομηνίας και ώρας που σχετίζεται με την χρονική ζώνη, απαιτείται η μορφοποίηση μαζί με την χρονική ζώνη για εμφάνιση.
Συνήθεις χρονικές σφραγίδες (διάρκεια)
Το πρόβλημα του 2038 για τις χρονικές σφραγίδες
Το πρόβλημα του 2038 αναφέρεται στο πρόβλημα υπερχείλισης του 32-bit υπογεγραμμένου ακέραιου που αποθηκεύει το Unix timestamp (σε δευτερόλεπτα, ξεκινώντας από τις 00:00:00 UTC της 1ης Ιανουαρίου 1970) μετά τις 03:14:07 της 19ης Ιανουαρίου 2038.
Επειδή το εύρος του 32-bit υπογεγραμμένου ακέραιου είναι από -2,147,483,648 έως 2,147,483,647, και το timestamp των 03:14:07 UTC της 19ης Ιανουαρίου 2038 είναι 2,147,483,647, πέρα από αυτό το χρονικό σημείο, ο 32-bit υπογεγραμμένος ακέραιος δεν θα μπορεί να αναπαραστήσει τα επόμενα timestamps.
Τα περισσότερα συστήματα ή λογισμικά που επηρεάζονται είναι παλιά συστήματα που χρησιμοποιούν 32-bit time_t. Τα σύγχρονα συστήματα συνήθως χρησιμοποιούν 64-bit (π.χ. 64-bit ακέραιους σε χιλιοστά του δευτερολέπτου) και δεν αντιμετωπίζουν αυτό το πρόβλημα.
Συνιστάται η χρήση 64-bit timestamps ή η χρήση βιβλιοθηκών χρόνου που υποστηρίζουν μεγάλο εύρος ημερομηνιών.
Πώς να αποκτήσετε/μετατρέψετε χρονικές σφραγίδες μέσω γλωσσών προγραμματισμού
Math.floor(Date.now() / 1000); // seconds
Date.now(); // milliseconds
new Date(1735689600 * 1000).toISOString();
new Date('2025-01-01T00:00:00Z').getTime();
time(); // seconds
intval(microtime(true) * 1000); // milliseconds
date('Y-m-d H:i:s', 1735689600);
strtotime('2025-01-01 00:00:00');
import time
int(time.time()) # seconds
int(time.time() * 1000) # milliseconds
import datetime
datetime.datetime.utcfromtimestamp(1735689600).isoformat()
import datetime
int(datetime.datetime(2025,1,1,0,0,0,tzinfo=datetime.timezone.utc).timestamp())
import "time"
time.Now().Unix() // seconds
time.Now().UnixMilli() // milliseconds
import "time"
time.Unix(1735689600, 0).UTC().Format(time.RFC3339)
import "time"
ts := time.Date(2025,1,1,0,0,0,0,time.UTC).Unix()
use chrono::Utc;
let now = Utc::now();
let sec = now.timestamp(); // seconds i64
let ms = now.timestamp_millis(); // milliseconds i128
use chrono::{DateTime, NaiveDateTime, Utc};
let dt: DateTime = NaiveDateTime::from_timestamp_opt(1735689600, 0)
.unwrap()
.and_utc();
let iso = dt.to_rfc3339();
use chrono::DateTime;
let ts = DateTime::parse_from_rfc3339("2025-01-01T00:00:00Z")
.unwrap()
.timestamp();
-- MySQL / MariaDB
SELECT UNIX_TIMESTAMP();
-- PostgreSQL
SELECT EXTRACT(EPOCH FROM NOW())::bigint;
-- SQLite
SELECT strftime('%s', 'now');
-- MySQL / MariaDB
SELECT FROM_UNIXTIME(1735689600);
-- PostgreSQL
SELECT to_timestamp(1735689600) AT TIME ZONE 'UTC';
-- SQLite
SELECT datetime(1735689600, 'unixepoch');
-- MySQL / MariaDB
SELECT UNIX_TIMESTAMP('2025-01-01 00:00:00');
-- PostgreSQL
SELECT EXTRACT(EPOCH FROM TIMESTAMP '2025-01-01 00:00:00+00')::bigint;
-- SQLite
SELECT strftime('%s', '2025-01-01 00:00:00');