Epoch Converter
Đổi Unix timestamp sang ngày giờ dễ đọc và ngược lại, theo UTC hoặc bất kỳ múi giờ IANA nào kèm DST. Chuyển đổi hàng loạt, tự phát hiện giây/ms/us/ns.
Epoch & Unix Timestamp Converter - Chuyển Đổi Thời Gian Ngay Lập Tức
Công cụ chuyển đổi Unix epoch mạnh mẽ chuyển đổi giữa Unix timestamps và ngày tháng dễ đọc. Hỗ trợ chuyển đổi hàng loạt, tự động phát hiện định dạng (giây/mili giây/micro giây), nhiều múi giờ và các định dạng ngày khác nhau. Lấy timestamp hiện tại chỉ với một cú nhấp.
Unix epoch time là gì?
Unix epoch (hay Unix time hoặc POSIX time hoặc Unix timestamp) là số giây đã trôi qua kể từ ngày 1 tháng 1 năm 1970 (nửa đêm UTC/GMT), không tính giây nhuận (theo ISO 8601: 1970-01-01T00:00:00Z).
Theo nghĩa đen, epoch là Unix time 0 (nửa đêm 1/1/1970), nhưng 'epoch' thường được dùng như từ đồng nghĩa với Unix time.
Ví dụ:
- Timestamp: 1697356800
- Ngày: 15 tháng 10, 2023 00:00:00 UTC
Sự thật chính:
- Luôn ở UTC (không có múi giờ)
- Giây kể từ 1970-01-01 00:00:00
- Có thể âm cho ngày trước 1970
- Hệ thống 32-bit: Tối đa 2147483647 (2038-01-19)
- Đây được gọi là vấn đề Year 2038 hoặc Y2038
Thường dùng trong:
- Ngôn ngữ lập trình (PHP, JavaScript, Python)
- Databases (MySQL, PostgreSQL)
- APIs và web services
- File systems (thời gian sửa đổi)
- Logging và analytics
Sự khác biệt giữa giây, mili giây và micro giây?
Unix timestamps có thể ở các mức độ chính xác khác nhau:
Giây (10 chữ số):
- Unix timestamp chuẩn
- Ví dụ: 1697356800
- Dùng trong: PHP time(), hệ thống Unix, hầu hết servers
- Độ chính xác: đến giây
Mili giây (13 chữ số):
- JavaScript timestamp
- Ví dụ: 1697356800000
- Dùng trong: JavaScript Date.now(), một số APIs
- Độ chính xác: đến mili giây (1/1000 giây)
Micro giây (16 chữ số):
- Timestamp độ chính xác cao
- Ví dụ: 1697356800000000
- Dùng trong: Giám sát hiệu suất, timing chính xác
- Độ chính xác: đến micro giây (1/1.000.000 giây)
Chuyển đổi:
- Giây sang mili giây: nhân với 1.000
- Mili giây sang micro giây: nhân với 1.000
- Micro giây sang giây: chia cho 1.000.000
Công cụ này tự động phát hiện:
- 10 chữ số = giây
- 13 chữ số = mili giây
- 16 chữ số = micro giây
- Chuyển đổi phù hợp
Làm thế nào để sử dụng batch converter?
Batch converter cho phép bạn chuyển đổi nhiều timestamps cùng lúc:
1. Chọn chế độ 'Chuyển Đổi Hàng Loạt'
2. Nhập nhiều timestamps (mỗi dòng một):
1697356800
1697443200
1697529600
3. Nhấp 'Chuyển đổi'
4. Xem tất cả kết quả ngay lập tức:
- Mỗi timestamp được chuyển sang ngày
- Tự động phát hiện định dạng cho từng cái
- ISO 8601, RFC 2822 và local time
- Sao chép từng kết quả riêng lẻ
Lợi ích:
- Tiết kiệm thời gian chuyển đổi nhiều timestamps
- So sánh ngày cạnh nhau
- Hoàn hảo cho phân tích log
- Xử lý hàng loạt hiệu quả
- Xuất kết quả dễ dàng
Thời gian tương đối là gì?
Thời gian tương đối hiển thị timestamp đã xảy ra cách đây bao lâu (hoặc còn bao lâu nữa):
Ví dụ quá khứ:
- 'vừa xong' (< 10 giây trước)
- '5 phút trước'
- '2 giờ trước'
- '3 ngày trước'
- '2 tuần trước'
Ví dụ tương lai:
- 'trong 30 giây'
- 'trong 5 phút'
- 'trong 2 giờ'
- 'trong 3 ngày'
Tại sao hữu ích:
- Trực quan hơn ngày chính xác
- Trải nghiệm người dùng tốt hơn
- Phổ biến trên mạng xã hội
- Dễ hiểu
- Hiển thị ngữ cảnh trong nháy mắt
Công cụ hiển thị cả:
- Thời gian tuyệt đối (ngày/giờ chính xác)
- Thời gian tương đối (X trước / trong Y)
Hoàn hảo cho:
- Timestamps mạng xã hội
- Activity feeds
- Hệ thống comment
- Thời gian thông báo
- Chỉ báo cập nhật cuối

Độ chính xác của chuyển đổi như thế nào?
Chuyển đổi có độ chính xác cao:
Độ chính xác:
- Giây: chính xác đến 1 giây
- Mili giây: chính xác đến 1 mili giây
- Micro giây: chính xác đến 1 micro giây
Xử lý múi giờ:
- UTC: thời gian quốc tế chính xác
- Local: điều chỉnh theo múi giờ của bạn
- DST: tự động xử lý bởi trình duyệt
Hạn chế:
- Áp dụng giới hạn JavaScript Date
- Giây nhuận không được tính (theo spec Unix)
- Tràn 32-bit: vấn đề Year 2038
- Ngày rất cũ có thể có vấn đề lịch
Xử lý phía client:
- Không có độ trễ server
- Chuyển đổi tức thì
- Bảo mật riêng tư (không gửi dữ liệu)
- Hoạt động offline
Công cụ sử dụng:
- JavaScript Date object
- Phát hiện múi giờ native
- APIs thời gian chuẩn
- Phương pháp đã kiểm tra và đáng tin cậy
Làm thế nào để chuyển timestamp sang một múi giờ cụ thể?
Bản thân Unix timestamp không có múi giờ — nó luôn đếm số giây kể từ 1970-01-01 00:00:00 UTC. Múi giờ chỉ quan trọng khi bạn HIỂN THỊ nó dưới dạng ngày giờ theo đồng hồ.
Với công cụ này:
1. Chọn chế độ Timestamp sang Date, Timestamp Hiện Tại hoặc Hàng Loạt.
2. Chọn một múi giờ trong ô chọn Múi giờ (liệt kê mọi múi giờ IANA mà trình duyệt của bạn hỗ trợ, ví dụ America/New_York, Europe/London, Asia/Ho_Chi_Minh).
3. Chuyển đổi — kết quả hiển thị ngày theo UTC, giờ Địa phương của trình duyệt VÀ múi giờ bạn chọn kèm độ lệch UTC chính xác.
Giờ tiết kiệm ánh sáng (DST) được xử lý tự động: độ lệch được tính cho đúng ngày đó, nên một timestamp mùa hè ở America/New_York hiển thị -04:00 (EDT) còn mùa đông là -05:00 (EST).
Ví dụ: timestamp 1697356800
- UTC: 2023-10-15 08:00:00
- Asia/Ho_Chi_Minh: 2023-10-15 15:00:00 (+07:00)
- America/New_York: 2023-10-15 04:00:00 (-04:00, đang áp dụng DST)
Rất tiện để gỡ lỗi log từ các máy chủ ở khu vực khác mà không cần đổi cài đặt hệ thống của bạn.
Đoạn code: lấy Unix timestamp trong PHP, JS, Python và MySQL
Các cách phổ biến để tạo hoặc đọc Unix timestamp trong nhiều ngôn ngữ và cơ sở dữ liệu:
PHP:
- Giây hiện tại: time()
- Mili giây: (int) (microtime(true) * 1000)
- Timestamp từ ngày: strtotime('2023-10-15 00:00:00 UTC')
- Định dạng một timestamp: date('Y-m-d H:i:s', 1697356800)
JavaScript:
- Mili giây hiện tại: Date.now()
- Giây hiện tại: Math.floor(Date.now() / 1000)
- Từ timestamp: new Date(1697356800 * 1000).toISOString()
Python:
- Giây hiện tại (số thực): import time; time.time()
- Giây nguyên: int(time.time())
- Từ timestamp (UTC): from datetime import datetime, timezone; datetime.fromtimestamp(1697356800, timezone.utc)
MySQL:
- Giây hiện tại: SELECT UNIX_TIMESTAMP();
- Timestamp sang ngày: SELECT FROM_UNIXTIME(1697356800);
- Ngày sang timestamp: SELECT UNIX_TIMESTAMP('2023-10-15 00:00:00');
Shell (GNU date):
- Giây hiện tại: date +%s
- Timestamp sang ngày (UTC): date -u -d @1697356800
Lưu ý: PHP, Python time.time() và MySQL UNIX_TIMESTAMP() trả về GIÂY, còn JavaScript Date.now() trả về MILI GIÂY — dán cái nào vào công cụ này thì định dạng cũng được tự động phát hiện.
Tại sao timestamps quan trọng trong lập trình?
Timestamps là nền tảng trong lập trình:
Ghi lại thời gian:
- Ngày đăng ký người dùng
- Thời gian đăng nhập cuối
- Tạo/sửa đổi file
- Log entries
- Theo dõi events
Tính toán thời gian:
- Khoảng thời gian giữa events
- Tính tuổi
- Kiểm tra hết hạn
- Lập lịch tasks
- Rate limiting
Độc lập múi giờ:
- Lưu thời gian ở UTC (timestamp)
- Hiển thị ở múi giờ local của user
- Không nhầm lẫn múi giờ
- Nhất quán trên toàn cầu
Sắp xếp và Indexing:
- So sánh số dễ dàng
- Sắp xếp database nhanh
- Indexing hiệu quả
- Phép toán đơn giản (cộng/trừ giây)
APIs và trao đổi dữ liệu:
- Định dạng chuẩn qua các ngôn ngữ
- JSON-friendly (chỉ là số)
- Không nhập nhằng khi parse
- Hiểu rộng rãi
Tham khảo nhanh:
- 1 giờ = 3.600 giây
- 1 ngày = 86.400 giây
- 1 tuần = 604.800 giây
- 1 tháng ≈ 2.629.743 giây
- 1 năm ≈ 31.556.926 giây
Tính năng chính
- Chuyển đổi Unix timestamp sang ngày
- Chuyển đổi ngày sang Unix timestamp
- Batch converter - chuyển đổi nhiều timestamps cùng lúc
- Tự động phát hiện định dạng theo độ lớn (giây/mili giây/micro giây/nano giây)
- Hiển thị thời gian tương đối (X trước / trong Y)
- Bảng tham khảo nhanh cho đơn vị thời gian
- Hỗ trợ giây, mili giây, micro giây và nano giây
- Định dạng ngày chuẩn (ISO 8601, RFC 2822)
- Bất kỳ múi giờ IANA nào kèm độ lệch UTC và DST chính xác (cùng UTC và Local)
- Lấy timestamp hiện tại chỉ với một cú nhấp
- Copy timestamps và dates vào clipboard
- Xử lý 100% phía client
- Không giao tiếp server
- Hoạt động offline
- Hỗ trợ chế độ tối
- Thân thiện với mobile
- Nhanh và hiệu quả
