العد الطويل للمايا من التاريخ
يحوّل هذا المحوّل تاريخاً ميلادياً صريحاً إلى مراتب العد الطويل الخمس المعروفة لدى المايا: باكتون وكاتون وتون ووينال وكين.
شغّل الأداة مجانًا
ويستخدم ارتباط Goodman-Martinez-Thompson ذي الثابت 584,283، ويتعامل مع الإدخال حصراً بوصفه يوماً تقويمياً وفق UTC، لذلك لا تتغير النتيجة باختلاف المنطقة الزمنية للجهاز أو قواعد التوقيت الصيفي. وتتضمن الإجابة أيضاً الصيغة المنقوطة ورقم اليوم اليولياني وإجمالي الأيام المنقضية المستخدم في الحساب، مما يتيح لكم مراجعة التحويل أو الاستشهاد به أو اختباره أو دمجه بسهولة.
أدخلوا يوماً دقيقاً من التقويم الميلادي
يرجى إدخال التاريخ بالصيغة الصارمة YYYY-MM-DD، مع إضافة صفر بادئ عندما يتكون الشهر أو اليوم من رقم واحد. فعلى سبيل المثال، يُكتب 21 ديسمبر 2012 هكذا: 2012-12-21. يقبل المحوّل السنوات من 0001 إلى 9999، ويطبق التقويم الميلادي الاستباقي على هذا النطاق كله. وهذا يعني تمديد قواعد السنوات الكبيسة الميلادية المألوفة إلى الماضي، حتى للفترات التاريخية التي سبقت اعتماد البلدان المختلفة لهذا التقويم رسمياً. يمثل الإدخال تاريخ يوم تقويمي لا طابعاً زمنياً؛ فلا يتضمن ساعة أو إزاحة أو موقعاً أو انتقالاً إلى التوقيت الصيفي أو يوماً حالياً ضمنياً. ويجعل هذا التمييز الطلبات المتكررة مستقرة في جميع البيئات. تُرفض التواريخ المستحيلة مثل 2023-02-29 والقيم سيئة التنسيق والطوابع الزمنية والتواريخ المفقودة، ولا تُصحح بصمت. إذا كان مصدركم التاريخي يستخدم التقويم اليولياني، فحوّلوا تاريخ المصدر أولاً إلى اليوم الميلادي المقابل. يمنع عقد الإدخال الصريح هذا أن يبدو اختلاف تسمية التقويم كأنه خطأ في حساب المايا.
افهموا الارتباط وطريقة الحساب
يتطلب تحويل العد الطويل ربط التسلسل الزمني للمايا بنظام أرقام الأيام اليوليانية المستخدم في حسابات التقويم الحديثة. وتعلن هذه الأداة اختيارها بوضوح: ثابت Goodman-Martinez-Thompson، أو GMT، وقيمته 584,283. تحوّل الأداة أولاً اليوم الميلادي الاستباقي المقدم إلى رقم يوم يولياني صحيح باستخدام حساب الأعداد الصحيحة. ثم تطرح 584,283 للحصول على عدد وحدات كين المنقضية منذ حقبة العد الطويل المرتبطة. ويُفكك هذا المجموع من أكبر وحدة إلى أصغرها. يعادل الباكتون الواحد 144,000 يوم، والكاتون 7,200 يوم، والتون 360 يوماً، والوينال 20 يوماً، والكين يوماً واحداً. ولا تُعاد قيمة الباكتون اصطناعياً إلى الصفر بعد ثلاثة عشر، لذلك تظل التواريخ اللاحقة لـ13.0.0.0.0 مرتبة وغير ملتبسة. قد تمنح مقترحات الارتباط الأكاديمية الأخرى اليوم الميلادي نفسه قيمة مختلفة في العد الطويل. ولذلك تكتسب تسمية الارتباط ورقم اليوم اليولياني في النتيجة أهمية خاصة؛ إذ يوضحان بدقة الاتفاقية التي أنتجت النتيجة، ويقدمان قيماً وسيطة تتيح التحقق المستقل.
اقرؤوا الحقول الناتجة واستخدموها
النتيجة الأساسية هي سلسلة long_count المنقوطة، وترتيبها baktun.katun.tun.uinal.kin. وتُعاد المراتب الخمس نفسها أيضاً في حقول صحيحة منفصلة، وهي أنسب للفرز وقوالب العرض وأعمدة قواعد البيانات والحسابات اللاحقة. يحتوي total_days على العدد الكامل لوحدات كين المنقضية منذ الحقبة المرتبطة المختارة، بينما يسجل julian_day_number رقم اليوم الوسيط للتاريخ الميلادي. ويكرر حقل date الإدخال المتحقق منه كما هو، أما correlation فيحدد ثابت GMT المستخدم. ولأن التنفيذ يجري عمليات محدودة على أعداد صحيحة، ولا يستدعي ساعة أو محلل تواريخ للمنصة أو مولد أرقام عشوائية أو خدمة بعيدة، ينتج الإدخال المتطابق دائماً JSON متطابقاً. لذا تلائم الأداة الجداول الزمنية التعليمية وكتالوغات المتاحف وملاحظات البحث القابلة لإعادة الإنتاج وبيانات الاختبار ومسارات API. تصلح نسخة المتصفح لعمليات البحث الفردية، بينما تبلغ تكلفة كل طلب آلي $0.002. احتفظوا بتسمية الارتباط عند نشر النتيجة أو تبادلها، ولا سيما عند مقارنتها بمصدر قد يستخدم اتفاقية ارتباط أخرى.
حالات الاستخدام
إضافة شرح إلى خط زمني تاريخي
أضيفوا عدّاً طويلاً للمايا مرتبطاً بصورة متسقة إلى جانب التواريخ الميلادية في معرض أو مقال أو تسلسل زمني تعليمي.
التحقق من سجلات الكتالوج
أعيدوا حساب قيم العد الطويل المنقوطة من التواريخ الميلادية المخزنة، واحتفظوا بالارتباط ورقم اليوم اليولياني لأغراض التدقيق.
إنشاء بيانات تاريخ قابلة لإعادة الإنتاج
أنشئوا أمثلة حتمية لتحويل التقويم لاختبارات البرمجيات من دون الاعتماد على المنطقة الزمنية للنظام أو محلل التواريخ.
الأسئلة الشائعة
أي ارتباط للمايا يستخدمه هذا المحوّل؟
يستخدم ثابت ارتباط Goodman-Martinez-Thompson البالغ 584,283، ويحدد هذه الاتفاقية في كل نتيجة.
ماذا تعني كل مرتبة؟
من اليسار إلى اليمين: باكتون وكاتون وتون ووينال وكين، وهي وحدات تساوي 144,000 و7,200 و360 و20 و1 يوم على الترتيب.
هل تغير منطقتي الزمنية الإجابة؟
لا. يُفسر الإدخال بوصفه يوماً تقويمياً صريحاً وفق UTC، ولا يرجع الحساب إلى ساعة أو منطقة زمنية محلية.
لماذا قد يعرض محوّل آخر قيمة مختلفة؟
قد يستخدم ثابت ارتباط آخر، أو يفسر المصدر كتاريخ يولياني بدلاً من ميلادي، أو يحلل طابعاً زمنياً وفق منطقة محلية.
ما تكلفة التحويل عبر API؟
تبلغ تكلفة كل طلب API مقدار $0.002. ويمكن إجراء التحويلات الفردية في محوّل المتصفح من دون استدعاء API.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/date/maya-long-count \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2012-12-21"}'const res = await fetch("https://api.kit.forhosting.com/date/maya-long-count", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2012-12-21"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/maya-long-count",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2012-12-21"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/maya-long-count", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2012-12-21"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2012-12-21"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/maya-long-count", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"date": "2012-12-21"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.maya_long_count",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |