حاسبة إضافة الأيام إلى التاريخ أو طرحها منه
تاريخ 28 ديسمبر 2024 بعد إضافة 5 أيام يصبح 2 يناير 2025. أدخل تاريخًا وعدد الأيام، موجبًا للتقدم أو سالبًا للرجوع، لتحصل على التاريخ الدقيق في التقويم مع احتساب عطلات نهاية الأسبوع. مجاني في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- التاريخ
- 2024-12-28
- الأيام
- 5
- النتيجة
- 2025-01-02
تنقل هذه الحاسبة تاريخًا حقيقيًا في التقويم الغريغوري إلى الأمام أو الخلف بعدد صحيح من الأيام التقويمية. أدخلوا تاريخًا بصيغة ISO الصارمة وعددًا موجبًا أو سالبًا أو صفرًا للحصول على التاريخ الناتج. تراعي العملية اختلاف أطوال الأشهر والأيام الكبيسة وقواعد السنوات المئوية والانتقال بين السنوات، من دون الاعتماد على ساعة الجهاز أو منطقته الزمنية أو التوقيت الصيفي.
أدخلوا تاريخًا دقيقًا وعدد أيام ذي إشارة
قدموا تاريخ البداية بالصيغة الصارمة YYYY-MM-DD، بأربعة أرقام للسنة ورقمين لكل من الشهر واليوم. يزيل العرض الثابت أي التباس إقليمي؛ فالقيمة 2026-04-09 تعني دائمًا التاسع من أبريل. يجب أن يكون التاريخ موجودًا فعلًا في التقويم الغريغوري الاستباقي.
الحادي والثلاثون من أبريل غير صحيح، وكذلك التاسع والعشرون من فبراير في سنة بسيطة. أدخلوا في الحقل الثاني عددًا صحيحًا من الأيام. تنقل القيم الموجبة التاريخ إلى الأمام، والسالبة إلى الخلف، ويبقي الصفر تاريخ البداية كما هو.
يمثل العدد أيامًا تقويمية، فتحسب كل مرة يُتجاوز فيها منتصف الليل يومًا واحدًا. تشمل العملية السبت والأحد والعطلات؛ استخدموا أداة أيام العمل إذا وجب استثناؤها. تُقبل السنوات من 0001 إلى 9999، وتُرفض أي عملية تخرج نتيجتها عن هذا النطاق.
كما تُرفض القيم الكسرية أو اللانهائية أو غير الآمنة أو المفقودة.
كيفية حساب الانتقالات والسنوات الكبيسة
تتحقق العملية أولًا من السنة والشهر واليوم وفق أطوال الأشهر الغريغورية. يحتوي فبراير عادة على ثمانية وعشرين يومًا، ويحتوي على تسعة وعشرين إذا كانت السنة تقبل القسمة على أربعة؛ أما السنوات المئوية فيجب أن تقبل القسمة على أربعمائة أيضًا. لذلك تكون 2000 و2024 سنتين كبيستين، بينما لا تكون 1900 و2100 كذلك.
بعد التحقق، يُحوَّل التاريخ المدني إلى رقم ترتيبي صحيح يمثل موضعه الدقيق في التقويم. يُضاف عدد الأيام بإشارته إلى ذلك الرقم، ثم يُحوَّل الرقم الجديد إلى سنة وشهر ويوم. تعبر هذه الطريقة نهاية فبراير والأشهر ذات الثلاثين يومًا وديسمبر وعدة سنوات طبيعيًا في الاتجاهين.
وهي لا تعدل ساعة ولا تنشئ قيمة Date في JavaScript. فالعمليات المعتمدة على الساعة قد ترث منطقة زمنية أو انتقالًا للتوقيت الصيفي من بيئة التشغيل، مع أن المسألة تخص الأيام المدنية وحدها. هنا تُستخدم حسابات صحيحة حتمية بلا شبكة ولا قراءة للوقت الحالي.
استخدموا النتيجة بأمان في سير العمل
تعيد الاستجابة الناجحة تاريخ البداية بعد توحيده، وعدد الأيام المطبق بإشارته، وتاريخ ISO الناتج. يسهل تخزين هذا الإخراج الموجز في قاعدة بيانات أو مقارنته في الاختبارات أو إدراجه في سجل فاتورة أو تمريره إلى خطوة لاحقة. تشمل الاستخدامات الشائعة حساب مواعيد السداد بالأيام التقويمية، ونقل تواريخ الحملات، وإنشاء تذكيرات التجديد، وتحديد حدود الاحتفاظ، وإعداد النتائج المتوقعة لاختبارات البرمجيات.
تذكروا أن هذه الإمكانية تنفذ حسابات تقويمية لا حسابات زمنية؛ فهي لا تضيف وقتًا من اليوم أو منطقة زمنية أو إزاحة UTC أو قاعدة لأيام الأسبوع أو تقويم عطلات أو اتفاقية عمل لنهاية الشهر. تؤدي إضافة يوم واحد دائمًا إلى التاريخ التقويمي التالي، حتى لو كان أحدًا أو عطلة. ولأن الوظيفة لا تستشير خدمة خارجية أو تقويمًا متغيرًا، فهي مناسبة للأتمتة القابلة للتكرار واختبارات التراجع طويلة الأمد.
حالات الاستخدام
حساب المهل التقويمية
أضيفوا عددًا تعاقديًا من الأيام إلى تاريخ إيداع أو إشعار أو فاتورة أو تفعيل، مع عبور حدود الشهر والسنة بصورة صحيحة.
الرجوع لاشتقاق تواريخ القطع
استخدموا عددًا سالبًا لاشتقاق حدود الاحتفاظ أو فترات التقارير أو بدايات التذكير أو تواريخ المقارنة التاريخية.
إنشاء بيانات اختبار حتمية
ولدوا تواريخ ISO متوقعة لحالات السنوات الكبيسة والانتقالات من دون الاعتماد على الساعة أو الإعداد الإقليمي أو المنطقة الزمنية.
الأسئلة الشائعة
هل يمكن طرح الأيام إلى جانب إضافتها؟
نعم. أدخلوا عددًا صحيحًا سالبًا للرجوع، أو موجبًا للتقدم، أو صفرًا للإبقاء على التاريخ نفسه.
هل يراعي الحساب السنوات الكبيسة؟
نعم. يطبق القواعد الغريغورية، ومنها استثناء القرون: لا تكون السنة القابلة للقسمة على 100 كبيسة إلا إذا قبلت القسمة على 400 أيضًا.
ما تنسيق التاريخ المقبول؟
استخدموا الصيغة الصارمة YYYY-MM-DD مثل 2026-08-06. يجب أن يتكون الشهر واليوم من رقمين وأن يكون التاريخ موجودًا.
هل تُستثنى عطلات نهاية الأسبوع والعطلات الرسمية؟
لا. تحسب هذه الإمكانية جميع الأيام التقويمية. استخدموا حاسبة أيام العمل إذا أردتم استثناء الأيام غير العاملة.
ماذا يحدث إذا كان تاريخ البداية غير صحيح؟
لا تُنقل تواريخ مستحيلة مثل 2023-02-29 أو 2026-04-31 تلقائيًا إلى شهر آخر.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/math/add-subtract-days \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2024-12-28","days":5}'const res = await fetch("https://api.kit.forhosting.com/math/add-subtract-days", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2024-12-28",
"days": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/add-subtract-days",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2024-12-28",
"days": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/add-subtract-days", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2024-12-28","days":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2024-12-28","days":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/add-subtract-days", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"date": "2024-12-28",
"days": 5
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.add_subtract_days",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
وتُرفض التواريخ المستحيلة بوضوح بدل تعديلها خفية، ولذلك تصلح النتيجة للجداول والفوترة ومسارات البيانات والاختبارات والأتمتة القابلة للتكرار عبر API.
أدخلوا تاريخًا دقيقًا وعدد أيام ذي إشارة
تضمن هذه القواعد استجابة متطابقة في المتصفح أو البرنامج النصي أو الاختبار أو تكامل API، من دون تخمين للتنسيق المحلي أو تصحيح تلقائي يخفي بيانات المصدر الخاطئة.
كيفية حساب الانتقالات والسنوات الكبيسة
ولذلك ينتج إدخال JSON نفسه دائمًا إخراج JSON نفسه بصرف النظر عن مكان التشغيل ووقته.
استخدموا النتيجة بأمان في سير العمل
تحققوا من بيانات المصدر؛ فالتاريخ المستحيل يولد invalid_input لكي يتوقف التكامل ويصحح السجل. الاستخدام في المتصفح مجاني، وتكلفة طلب API الناجح هي $0.002.
أسئلة تقنية
ما تكلفة طلب API؟
الحاسبة في المتصفح مجانية. يستخدم طلب API الناجح السعر الأساسي المنشور وهو $0.002.