ForHosting KIT · أدوات المطورين

تحويل مدة ISO 8601 إلى ثوان

يمكنكم تحويل مدة ISO 8601 مثل P3DT4H30M إلى مجموع واحد بالثواني. يقرأ المحول السنوات والأشهر والأسابيع والأيام والساعات والدقائق والثواني، ثم يطبق أطوالا اسمية واضحة: 365 يوما لكل سنة و30 يوما لكل شهر. ولأنه يعتمد على نص الإدخال وحده ولا يستشير تقويما أو منطقة زمنية أو التاريخ الحالي أو التوقيت الصيفي، فإن الإدخال نفسه يعطي النتيجة نفسها دائما.

● Betaمجاني · داخل متصفحك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا

قراءة بنية مدة ISO 8601

تبدأ مدة ISO 8601 بالحرف P، ثم تأتي وحدات التاريخ، وعند وجود وحدات زمنية يوضع الفاصل T قبلها. فمثلا تعني P2W أسبوعين، وتعني P3DT6H ثلاثة أيام وست ساعات، بينما تعني PT15M خمس عشرة دقيقة. يتغير معنى M حسب موضعه: فهو أشهر قبل T ودقائق بعده. يتعرف المحول على السنوات والأشهر والأسابيع والأيام والساعات والدقائق والثواني بالترتيب القياسي. ويمكن إدخال كسر عشري في أصغر وحدة مذكورة باستعمال النقطة أو الفاصلة. أدخلوا المدة كاملة من دون شرح محيط بها. تعيد الاستجابة الإدخال المطبع، وتسرد المكونات المحللة، وتعرض total_seconds. تُرفض المدد الفارغة والوحدات غير المرتبة والقيم السالبة والرمزان P أو PT منفردين والنصوص الدخيلة. يساعد هذا التحقق الصارم على اكتشاف البيانات غير الصالحة عند حدود التكامل بدلا من تخمين رقم مضلل بصمت.

فهم السنوات والأشهر الاسمية

تملك المدة المؤلفة من أيام أو ساعات أو دقائق أو ثوان فقط طولا ثابتا واضحا. أما السنوات والأشهر التقويمية فتختلف؛ فقد يضم الشهر الفعلي 28 أو 29 أو 30 أو 31 يوما، وقد تضم السنة 365 أو 366 يوما. ولا يتضمن نص المدة وحده تاريخ البداية اللازم لحسم هذا الاختلاف. لذلك تستخدم الأداة ثوابت اسمية تظهر في كل استجابة: 365 يوما للسنة و30 يوما للشهر. يساوي الأسبوع سبعة أيام دائما، واليوم 86,400 ثانية، والساعة 3,600 ثانية، والدقيقة 60 ثانية. يجمع الحساب المكونات بعد ضربها في أوزانها، ولذلك يضيف الشهر 2,592,000 ثانية في كل مرة. لا تصف هذه الافتراضات فترة تقويمية بعينها. إذا احتجتم إلى الثواني المنقضية بين طابعين زمنيين حقيقيين، فاستخدموا عملية فرق التاريخ والوقت مع نقطتي بداية ونهاية صريحتين.

استخدام المجاميع الحتمية بأمان

تكون النتيجة رقما صحيحا في JSON يمثل الثواني. تُقبل الكسور في صيغة ISO فقط في أصغر وحدة مكتوبة، وعندما ينتهي الحساب إلى عدد صحيح من الثواني. لذلك تصبح PT0.5M مقدار 30 ثانية، بينما تُرفض القيمة التي تتطلب جزءا من الثانية. كما تُرفض المجاميع الواقعة خارج نطاق الأعداد الصحيحة الآمنة في JavaScript كي لا تبدو المدد الضخمة دقيقة وهي ليست كذلك. تصلح النتيجة لحقول قواعد البيانات والتحقق من التأخير وإعداد المهلات والمحاكاة والاختبارات القابلة للتكرار، بشرط مشاركة الافتراضات الاسمية المعلنة. احتفظوا بكائن الافتراضات إذا كان فريق آخر قد يفسر الأشهر بحسب التقويم. تبلغ تكلفة طلب API الواحد $0.002، ويمكن تشغيل التحويل نفسه في المتصفح. لا تدخل الشبكة أو الساعة الحالية أو العشوائية أو كائن Date في الحساب، لذلك تعطي المدخلات المتطابقة مكونات ومجموعا متطابقين.

توحيد مدد API

حوّلوا حقول ISO 8601 الواردة إلى عدد صحيح واحد قبل التحقق أو المقارنة أو التخزين.

إنشاء اختبارات قابلة للتكرار

أنشئوا مجاميع متوقعة ثابتة من دون الاعتماد على تاريخ بداية أو منطقة زمنية أو التقويم الحالي.

مراجعة قيم الإعداد

راجعوا فترات الاحتفاظ والتأخير والمهلات بصيغة ISO مع إظهار الافتراضات الاسمية.

ما طول السنة في هذا المحول؟

تساوي كل سنة 365 يوما بالضبط، أي 31,536,000 ثانية.

ما طول الشهر؟

يساوي كل شهر اسميا 30 يوما، أي 2,592,000 ثانية، ولا يُستخدم تاريخ بداية.

هل يعني M الأشهر أم الدقائق؟

يعني M قبل الفاصل T الأشهر، ويعني بعده الدقائق.

هل تُقبل المدد العشرية؟

نعم، في أصغر وحدة مذكورة إذا كان الناتج عددا صحيحا آمنا من الثواني، ويمكن استعمال النقطة أو الفاصلة.

ما تكلفة API؟

يكلف كل طلب API مقدار $0.002. ويمكن أيضا تشغيل التحويل التفاعلي محليا في المتصفح.

كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.

POSThttps://api.kit.forhosting.com/date/iso-duration-to-seconds

صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.

curl -X POST https://api.kit.forhosting.com/date/iso-duration-to-seconds \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"duration":"P1Y2M3DT4H5M6S"}'
{
  "duration": "P1Y2M3DT4H5M6S"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "date.iso_duration_to_seconds",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.

لكل طلب$0.002

السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.

max_chars200
HTTPالرمزالمعنى
401unauthorizedمفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك.
402insufficient_balanceرصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة.
404unknown_typeنوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب.
429rate_limitedتجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة.

اطّلع على توثيق KIT الكامل ←