ตัวแปลงเวลา Unix
แปลง Unix timestamp เป็นวันที่/เวลาที่มนุษย์อ่านได้ หรือแปลงวันที่/เวลาเป็น Unix timestamp มาพร้อมฟีเจอร์นาฬิกาแบบสด รองรับหลายเขตเวลา และรูปแบบวันที่ที่หลากหลาย
แปลงวันที่เป็น Unix Timestamp
แปลงวันที่และเวลา (UTC) เป็น Unix Timestamp
ตัวบล็อกโฆษณาของคุณทำให้เราไม่สามารถแสดงโฆษณาได้
MiniWebtool ให้ใช้งานฟรีเพราะมีโฆษณา หากเครื่องมือนี้ช่วยคุณได้ โปรดสนับสนุนเราด้วย Premium (ไม่มีโฆษณา + เร็วขึ้น) หรืออนุญาต MiniWebtool.com แล้วรีโหลดหน้าเว็บ
- หรืออัปเกรดเป็น Premium (ไม่มีโฆษณา)
- อนุญาตโฆษณาสำหรับ MiniWebtool.com แล้วรีโหลด
เกี่ยวกับ ตัวแปลงเวลา Unix
ตัวแปลงเวลา Unix เป็นเครื่องมือที่ครอบคลุมสำหรับการแปลงระหว่าง Unix timestamps และวันที่ที่มนุษย์อ่านออก ไม่ว่าคุณจะเป็นนักพัฒนาที่กำลังดีบั๊ก timestamps นักวิเคราะห์ข้อมูลที่ประมวลผลไฟล์ล็อก หรือเพียงแค่สงสัยว่าเวลาในคอมพิวเตอร์ทำงานอย่างไร ตัวแปลงนี้ให้การแปลงแบบสองทิศทางที่แม่นยำพร้อมรูปแบบผลลัพธ์ที่หลากหลาย
เวลา Unix คืออะไร?
เวลา Unix (หรือที่เรียกว่า POSIX time, Epoch time หรือ Unix timestamp) เป็นระบบสำหรับติดตามเวลาในรูปแบบของวินาทีที่นับรวมกันมาเรื่อยๆ โดยจะนับจำนวนวินาทีที่ผ่านพ้นไปตั้งแต่วันที่ 1 มกราคม 1970 เวลา 00:00:00 UTC (เรียกว่า Unix Epoch) โดยไม่นับรวมอธิกวินาที
Unix timestamps เป็นพื้นฐานของการคำนวณเนื่องจากมีคุณสมบัติ:
- ความเรียบง่าย - จำนวนเต็มเพียงตัวเดียวสามารถแทนช่วงเวลาใดก็ได้
- ความอิสระจากเขตเวลา - timestamp เดียวกันหมายถึงช่วงเวลาเดียวกันทั่วโลก
- การเปรียบเทียบง่าย - ใช้การคำนวณทางคณิตศาสตร์พื้นฐานเพื่อเปรียบเทียบหรือหาผลต่างเวลา
- ประสิทธิภาพของพื้นที่ - จัดเก็บเป็นตัวเลขตัวเดียวแทนที่จะเป็นส่วนประกอบวันที่หลายส่วน
Unix Epoch
Unix Epoch คือจุดอ้างอิงสำหรับเวลา Unix: เที่ยงคืนของวันที่ 1 มกราคม 1970 ในเวลาสากลเชิงพิกัด (UTC) วันที่นี้ถูกเลือกโดยค่อนข้างอิสระในช่วงเริ่มต้นของการพัฒนา Unix ที่ Bell Labs ณ วินาทีนั้น Unix timestamp มีค่าเป็น 0
วิธีใช้ตัวแปลงนี้
การแปลง Unix Timestamp เป็นวันที่
- ป้อน Unix timestamp ของคุณในช่องป้อนข้อมูล (รองรับทั้งหน่วยวินาทีและมิลลิวินาที)
- คลิกปุ่ม "แปลงเป็นวันที่"
- ดูผลลัพธ์ในรูปแบบต่างๆ: ISO 8601, RFC 2822, วันที่เต็ม และการแยกส่วนประกอบ
- ใช้ปุ่มคัดลอกเพื่อคัดลอกรูปแบบใดก็ได้ไปยังคลิปบอร์ดของคุณอย่างรวดเร็ว
การแปลงวันที่ เป็น Unix Timestamp
- สลับไปยังแท็บ "วันที่ → Unix"
- ป้อนปี เดือน วัน และระบุชั่วโมง นาที วินาที (UTC) หากต้องการ
- คลิกปุ่ม "แปลงเป็น Unix Timestamp"
- คัดลอก timestamp ที่ได้เพื่อนำไปใช้ในแอปพลิเคชันของคุณ
Unix Timestamps ในการเขียนโปรแกรม
ภาษาโปรแกรมส่วนใหญ่มีฟังก์ชันในตัวเพื่อทำงานกับ Unix timestamps:
| ภาษา | รับ Timestamp ปัจจุบัน | แปลงเป็นวันที่ |
|---|---|---|
| JavaScript | Math.floor(Date.now()/1000) |
new Date(ts * 1000) |
| Python | import time; time.time() |
datetime.fromtimestamp(ts) |
| PHP | time() |
date('Y-m-d H:i:s', $ts) |
| Java | System.currentTimeMillis()/1000 |
new Date(ts * 1000L) |
| Ruby | Time.now.to_i |
Time.at(ts) |
| Go | time.Now().Unix() |
time.Unix(ts, 0) |
| C# | DateTimeOffset.UtcNow.ToUnixTimeSeconds() |
DateTimeOffset.FromUnixTimeSeconds(ts) |
ปัญหาปี ค.ศ. 2038
ปัญหาปี ค.ศ. 2038 (หรือที่รู้จักในชื่อ Y2K38 หรือ Unix Millennium Bug) เป็นปัญหาที่อาจเกิดขึ้นซึ่งส่งผลกระทบต่อระบบที่เก็บเวลา Unix เป็น จำนวนเต็มแบบมีเครื่องหมายขนาด 32-bit
จำนวนเต็มแบบมีเครื่องหมายขนาด 32-bit สามารถแทนค่าได้ตั้งแต่ -2,147,483,648 ถึง 2,147,483,647 ซึ่งค่าสูงสุดนี้ตรงกับ:
- วันอังคารที่ 19 มกราคม 2038 เวลา 03:14:07 UTC
หลังจากนั้นหนึ่งวินาที timestamp จะเกิดการโอเวอร์โฟลว์และย้อนกลับไปที่ -2,147,483,648 ซึ่งจะถูกตีความเป็นวันที่ 13 ธันวาคม 1901 สิ่งนี้อาจทำให้เกิด:
- ซอฟต์แวร์แครชและพฤติกรรมที่ไม่คาดคิด
- การคำนวณวันที่ผิดพลาด
- ข้อมูลเสียหายในฐานข้อมูล
- ระบบล้มเหลวในอุปกรณ์ฝังตัว (embedded devices)
วิธีแก้ปัญหา: ระบบสมัยใหม่ใช้จำนวนเต็ม 64-bit สำหรับ timestamps ซึ่งสามารถแทนวันที่ได้ไกลเกินกว่าอายุของจักรวาล (~292 พันล้านปี)
วินาที เทียบกับ มิลลิวินาที
ระบบที่แตกต่างกันใช้ความแม่นยำของ timestamp ที่แตกต่างกัน:
| ประเภท | จำนวนหลัก | ตัวอย่าง | ถูกใช้โดย |
|---|---|---|---|
| วินาที | 10 | 1704067200 | Unix/Linux, PHP, Python, C |
| มิลลิวินาที | 13 | 1704067200000 | JavaScript, Java, APIs |
| ไมโครวินาที | 16 | 1704067200000000 | บางฐานข้อมูล, ระบบความแม่นยำสูง |
| นาโนวินาที | 19 | 1704067200000000000 | Go, ห้องสมุดเวลาบางแห่ง |
ตัวแปลงของเราจะตรวจจับ timestamps ที่มี 13 หลักขึ้นไปว่าเป็นมิลลิวินาทีโดยอัตโนมัติและแปลงให้ตามความเหมาะสม
เวลา Unix และอธิกวินาที
ลักษณะสำคัญของเวลา Unix คือมัน ไม่ได้นับรวมอธิกวินาที โดยจะถือว่าทุกวันมี 86,400 วินาทีพอดี เมื่อมีการเพิ่มอธิกวินาทีโดยหน่วยงานรักษาเวลาสากล (เพื่อชดเชยความผิดปกติเล็กน้อยในการหมุนของโลก) เวลา Unix จะหยุดชั่วคราวหรือ "เล่นซ้ำ" หนึ่งวินาที
สิ่งนี้หมายความว่าเวลา Unix ไม่ได้เป็นแบบ monotonic (เพิ่มขึ้นอย่างต่อเนื่อง) อย่างเคร่งครัดในช่วงเหตุการณ์อธิกวินาที แต่ความเรียบง่ายนี้ช่วยให้ทำงานโปรแกรมได้ง่ายขึ้นมาก สำหรับแอปพลิเคชันส่วนใหญ่ ความแตกต่างนี้ไม่มีนัยสำคัญ
Unix Timestamps ที่พบบ่อย
| Timestamp | วันที่ | ความสำคัญ |
|---|---|---|
0 |
1 ม.ค. 1970 00:00:00 UTC | Unix Epoch |
1000000000 |
9 ก.ย. 2001 01:46:40 UTC | หนึ่งพันล้านวินาที |
1234567890 |
13 ก.พ. 2009 23:31:30 UTC | ลำดับตัวเลขที่น่าจดจำ |
2000000000 |
18 พ.ค. 2033 03:33:20 UTC | สองพันล้านวินาที |
2147483647 |
19 ม.ค. 2038 03:14:07 UTC | ค่าสูงสุด 32-bit (Y2038) |
คำถามที่พบบ่อย
Unix time (Unix timestamp) คืออะไร?
Unix time (หรือที่รู้จักในชื่อ POSIX time หรือ Epoch time) คือระบบสำหรับติดตามเวลาโดยใช้ผลรวมของวินาทีที่นับตั้งแต่วันที่ 1 มกราคม 1970 เวลา 00:00:00 UTC โดยไม่นับรวมอธิกวินาที Unix timestamps ถูกใช้อย่างแพร่หลายในระบบคอมพิวเตอร์เพราะเป็นวิธีที่ง่ายและไม่ขึ้นกับเขตเวลาในการจัดเก็บและเปรียบเทียบวันที่
Unix Epoch คืออะไร?
Unix Epoch คือจุดอ้างอิงสำหรับเวลา Unix: วันที่ 1 มกราคม 1970 เวลา 00:00:00 UTC โดย Unix timestamps ทั้งหมดแทนจำนวนวินาทีที่ผ่านไปนับจากช่วงเวลานี้ ยุคนี้ถูกเลือกเพราะเป็นช่วงเวลาใกล้เคียงกับตอนที่ Unix กำลังถูกพัฒนาที่ Bell Labs
ปัญหาปี ค.ศ. 2038 คืออะไร?
ปัญหาปี ค.ศ. 2038 (เรียกอีกอย่างว่า Y2K38 หรือ Unix Millennium Bug) เกิดขึ้นเนื่องจากระบบจำนวนมากเก็บ Unix timestamps เป็นจำนวนเต็มแบบมีเครื่องหมายขนาด 32-bit ซึ่งสามารถแสดงเวลาได้สูงสุดถึงวันที่ 19 มกราคม 2038 เวลา 03:14:07 UTC หลังจากนั้น timestamp จะโอเวอร์โฟลว์และเกิดข้อผิดพลาด ระบบสมัยใหม่ใช้จำนวนเต็ม 64-bit เพื่อแก้ปัญหานี้
ความแตกต่างระหว่างเวลา Unix ในหน่วยวินาทีและมิลลิวินาทีคืออะไร?
เวลา Unix ในหน่วยวินาทีนับวินาทีเต็มตั้งแต่ Epoch ส่วนมิลลิวินาที (ใช้ใน JavaScript/Java) จะคูณด้วย 1000 เพื่อความแม่นยำ โดยมิลลิวินาทีมี 13 หลัก และวินาทีมี 10 หลัก ตัวแปลงของเราตรวจจับให้โดยอัตโนมัติ
เวลา Unix นับรวมอธิกวินาทีหรือไม่?
ไม่ เวลา Unix ไม่นับรวมอธิกวินาที โดยจะถือว่าหนึ่งวันมี 86,400 วินาทีพอดี สิ่งนี้ทำให้เวลา Unix เรียบง่ายและคาดการณ์ได้
ฉันจะแปลง Unix timestamp เป็นวันที่ในการเขียนโปรแกรมได้อย่างไร?
ภาษาโปรแกรมส่วนใหญ่มีฟังก์ชันในตัว: JavaScript: new Date(timestamp * 1000). Python: datetime.fromtimestamp(timestamp). PHP: date('Y-m-d H:i:s', timestamp). Java: new Date(timestamp * 1000L). โปรดจำไว้ว่า JavaScript และ Java ใช้หน่วยมิลลิวินาที ในขณะที่ภาษาอื่นส่วนใหญ่ใช้หน่วยวินาที
แหล่งข้อมูลเพิ่มเติม
อ้างอิงเนื้อหา หน้าหรือเครื่องมือนี้ว่า:
"ตัวแปลงเวลา Unix" ที่ https://MiniWebtool.com/th// จาก MiniWebtool, https://MiniWebtool.com/
โดยทีมงาน miniwebtool อัปเดตเมื่อ: 5 ก.พ. 2026