الاتصال عبر MCP →

أدخل الحساب

Enter a Unix time in المللي ثانية to convert it to seconds, or use the value shown to see how the conversion works. 1 second = 1000 milliseconds.

صيغة رياضية

اعلان

نتائج

طابع وقت يونكس (بالثواني)
١٬٧٠٠٬٠٠٠٬٠٠٠
ثانية منذ 1 يناير 1970 بتوقيت UTC
المللي ثانية (epoch_ms) ١٬٧٠٠٬٠٠٠٬٠٠٠٬٠٠٠
الدقائق منذ بداية الحقبة ٢٨٬٣٣٣٬٣٣٣
الأيام منذ بداية الحقبة ١٩٬٦٧٥

ما هو طابع الوقت في يونكس؟

طابع الوقت في يونكس (ويُعرف أيضًا بوقت الحقبة Epoch Time أو وقت POSIX) هو عدد الثواني التي مرّت منذ منتصف ليل 1 يناير 1970 بتوقيت UTC (00:00:00)، دون احتساب الثواني الكبيسة. وهو الطريقة العالمية التي تخزّن بها الأجهزة لحظة زمنية معينة، بصرف النظر عن المناطق الزمنية أو تنسيقات التقويم. تأخذ هذه الحاسبة طابع وقت بوحدة المللي ثانية (وهي الوحدة التي تُرجعها معظم لغات البرمجة، مثل الدالة Date.now() في جافاسكربت) وتحوّله إلى ثوانٍ ودقائق وأيام منذ بداية الحقبة.

خط أرقام يوضح الوقت متصاعدًا بالثواني منذ بداية يونكس
يحسب وقت يونكس الثواني المنقضية منذ نقطة البداية في 1 يناير 1970، الساعة 00:00 بالتوقيت العالمي المنسق.

طريقة الاستخدام

أدخل وقت يونكس بالمللي ثانية في الحقل المخصص ثم اضغط للحساب. تقوم الأداة بالقسمة مع التقريب لأسفل على 1000 لتعطيك عدد ثواني يونكس الكاملة — وهي الصيغة الأكثر شيوعًا في قواعد البيانات وواجهات برمجة التطبيقات (APIs) وأمر لينكس date +%s. كما يعرض جدول النتائج القيمة الأصلية بالمللي ثانية إضافةً إلى عدد الدقائق والأيام المنقضية للتحقق السريع من صحة القيمة.

شرح المعادلة

المعادلة الأساسية للتحويل هي $$\text{epoch\_s} = \left\lfloor \frac{\text{now\_ms}}{1000} \right\rfloor$$ القسمة على 1000 تحوّل المللي ثانية إلى ثوانٍ، أما التقريب لأسفل (floor) فيحذف الجزء الكسري لتحصل على طابع وقت بثوانٍ كاملة. وتُحسب الدقائق عبر \(\left\lfloor \frac{\text{now\_ms}}{60000} \right\rfloor\)، بينما تُحسب الأيام عبر \(\left\lfloor \frac{\text{now\_ms}}{86{,}400{,}000} \right\rfloor\)، لأن اليوم الواحد يساوي 86,400 ثانية = 86,400,000 مللي ثانية.

رسم بياني لقسمة المللي ثانية على 1000 والتقريب للأسفل للحصول على الثواني
اقسم قيمة المللي ثانية على 1000 وقرّب الناتج للأسفل للحصول على ثوانٍ كاملة.

مثال تطبيقي

لنفترض أن \(\text{now\_ms} = 1{,}700{,}000{,}000{,}000\). عندئذٍ يكون $$\text{epoch\_s} = \left\lfloor \frac{1{,}700{,}000{,}000{,}000}{1000} \right\rfloor = 1{,}700{,}000{,}000 \text{ ثانية}$$ وهو ما يوافق تاريخ 14 نوفمبر 2023. أما الدقائق منذ بداية الحقبة فهي \(\left\lfloor \frac{1{,}700{,}000{,}000{,}000}{60000} \right\rfloor = 28{,}333{,}333\)، والأيام هي \(\left\lfloor \frac{1{,}700{,}000{,}000{,}000}{86{,}400{,}000} \right\rfloor = 19{,}675\).

الأسئلة الشائعة

لماذا تُستخدم الثواني وليس المللي ثانية في كل مكان؟ الأنظمة القديمة وكثير من واجهات برمجة التطبيقات (مثل يونكس وPostgreSQL وحقل exp في رموز JWT) تخزّن الوقت بالثواني، بينما تستخدم المتصفحات ولغة جافا المللي ثانية. والتحويل بينهما لا يتطلب سوى الضرب أو القسمة على 1000.

ماذا عن الثواني الكبيسة؟ يتجاهل وقت يونكس الثواني الكبيسة، فيكون العد قياسًا خطيًا نقيًا — وهذا مريح للعمليات الحسابية، لكنه لا يتوافق تمامًا مع توقيت UTC الفلكي.

هل ستتعطّل هذه الأنظمة عام 2038؟ الأنظمة التي تخزّن عدد الثواني في عدد صحيح مُوقَّع بسعة 32 بت ستتعرض لتجاوز السعة (overflow) في 19 يناير 2038. أما الأنظمة الحديثة ذات الـ 64 بت فلا تتأثر بذلك.

آخر تحديث: