تخطي إلى المحتوى الرئيسي
FreeOnlineTools Go
العربية
توضيح

ما هو الطابع الزمني؟ شرح Unix Epoch

بواسطة FreeOnlineTools Team · تم التحديث في 2026-09-02

إجابة سريعة

الطابع الزمني = ثواني منذ 1970-01-01 UTC. JavaScript يستخدم مللي ثانية (اضرب في 1000). Y2K38 = فيض 32-bit في 2038. استخدم محول الطوابع الزمنية المجاني للتحويل في متصفحك.

مقدمة

الطابع الزمني Unix هو عدد الثواني منذ 1 يناير 1970 00:00:00 UTC (حقبة Unix). 32-bit signed integer يفيض في 19 يناير 2038 (مشكلة Y2K38). JavaScript يستخدم مللي ثانية. المناطق الزمنية تؤثر على العرض فقط — الطابع الزمني دائماً UTC.

خطوة بخطوة

  1. فهم عصر يونكس

    عصر يونكس هو 1 يناير 1970، 00:00:00 بالتوقيت العالمي المنسق (UTC). الطابع الزمني لنظام Unix هو عدد الثواني من هذه اللحظة. الطوابع الزمنية الإيجابية تأتي بعد العصر؛ الطوابع الزمنية السلبية (التي تدعمها بعض الأنظمة) موجودة قبل ذلك.

  2. التمييز بين الثواني والمللي ثانية

    عادةً ما تكون الطوابع الزمنية لنظام التشغيل Unix بالثواني (10 أرقام اعتبارًا من عام 2026، على سبيل المثال، 1693526400). يقوم Date.now() وDate.getTime() في JavaScript بإرجاع ميلي ثانية (13 رقمًا، على سبيل المثال، 1693526400000). تحقق دائمًا من الوحدة التي يتوقعها API — فالخلط بينها هو الخطأ الأكثر شيوعًا في الطابع الزمني.

  3. فهم استقلال المنطقة الزمنية

    الطوابع الزمنية لنظام Unix تكون دائمًا بالتوقيت العالمي المنسق (UTC). أنها لا تعتمد على المنطقة الزمنية للمستخدم. لعرض طابع زمني في منطقة زمنية محددة، قم بتحويله إلى تاريخ وقم بتطبيق إزاحة المنطقة الزمنية. وهذا يجعل الطوابع الزمنية مثالية للتخزين والمقارنة.

  4. تعرف على مشكلة عام 2038

    ستتجاوز الأنظمة التي تستخدم الأعداد الصحيحة الموقعة 32 بت للطوابع الزمنية في 19 يناير 2038، الساعة 03:14:07 بالتوقيت العالمي - "مشكلة Y2038". لا تتأثر الأنظمة التي تستخدم أعدادًا صحيحة 64 بت أو أرقام JavaScript (تعويمات 64 بت). تعتبر الأنظمة الحديثة آمنة إلى حد كبير بالنسبة لـ Y2038، لكن الأنظمة القديمة المضمنة قد لا تكون كذلك.

أمثلة

الطابع الزمني لتاريخ معروف

مدخل: 2023-09-01 00:00:00 بالتوقيت العالمي

الإخراج: 1693526400 (ثانية) أو 1693526400000 (مللي ثانية)

عصر يونكس

مدخل: 01-01-1970 00:00:00 بالتوقيت العالمي

الإخراج: 0

حدود المشكلة Y2038

مدخل: 2038-01-19 03:14:07 بالتوقيت العالمي

الإخراج: 2147483647 (الحد الأقصى لعدد صحيح موقّع 32 بت)

المشاكل الشائعة

  • خلط الثواني والمللي ثانية - يستخدم JavaScript المللي ثانية (Date.now())، ويستخدم Unix ومعظم APIs الثواني. القسمة على 1000 لتحويل مللي ثانية إلى ثانية؛ اضرب في 1000 للعكس.
  • ارتباك المنطقة الزمنية - الطوابع الزمنية هي UTC. عند العرض، قم بالتحويل إلى المنطقة الزمنية المحلية للمستخدم أو حدد UTC. لا تقم بتطبيق الإزاحات على الطابع الزمني الأولي.
  • مشكلة عام 2038 — تجاوز الطوابع الزمنية الصحيحة الموقعة 32 بت بتاريخ 19-01-2038. استخدم أعدادًا صحيحة 64 بت أو أرقام JavaScript لتجنب ذلك.
  • الطوابع الزمنية السلبية —التواريخ التي تسبق 01/01/1970 لها طوابع زمنية سلبية. بعض الأنظمة لا تدعمها.

نصائح

  • تحقق دائمًا مما إذا كان API يتوقع ثوانٍ أو ميلي ثانية — وهذا هو خطأ الطابع الزمني الأكثر شيوعًا.
  • استخدم سلاسل ISO 8601 (على سبيل المثال، "2023-09-01T00:00:00Z") للطوابع الزمنية التي يمكن للإنسان قراءتها في APIs؛ استخدم عصر Unix للتخزين والحساب.
  • JavaScript Date.now() يُرجع المللي ثانية؛ اقسم على 1000 والأرضية لتحصل على الثواني.
  • استخدم محول الطابع الزمني الخاص بنا للتحويل بين الطوابع الزمنية والتواريخ التي يمكن للإنسان قراءتها في متصفحك.

الأدوات ذات الصلة

أدلة ذات صلة

مراجع