Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

مراجعة: حسابات التاريخ

جزء من قسم Logic & Flow في رحلة PHP على Coddy — الدرس 51 من 68.

challenge icon

التحدي

سهل

ستتلقى ثلاثة مدخلات: تاريخ البدء، وتاريخ الانتهاء، وسلسلة نصية للتعديل. أول مدخلين هما سلسلتان نصيتان للتاريخ بتنسيق Y-m-d (مثال: 2024-03-15)، والمدخل الثالث هو تعبير تعديل مثل +5 days، أو -2 weeks، أو +1 month.

اقرأ المدخلات الثلاثة، وأنشئ كائنين من نوع DateTime من تاريخي البدء والانتهاء، ثم طبق تعبير التعديل على تاريخ البدء، وبعد ذلك حدد أي التاريخين يأتي لاحقاً: تاريخ البدء المعدل أم تاريخ الانتهاء الأصلي. اطبع التاريخ اللاحق بتنسيق Y-m-d.

تنسيق المدخلات:

  • السطر الأول: سلسلة نصية لتاريخ البدء بتنسيق Y-m-d (مثال: 2024-03-15)
  • السطر الثاني: سلسلة نصية لتاريخ الانتهاء بتنسيق Y-m-d (مثال: 2024-04-10)
  • السطر الثالث: سلسلة نصية للتعديل (مثال: +5 days أو -2 weeks)

المخرجات المتوقعة: التاريخ اللاحق بين تاريخ البدء المعدل وتاريخ الانتهاء الأصلي، منسقاً كـ Y-m-d

جرّب بنفسك

<?php
// قراءة المدخلات الثلاثة
$startDate = trim(fgets(STDIN));
$endDate = trim(fgets(STDIN));
$modification = trim(fgets(STDIN));

// TODO: اكتب الكود الخاص بك أدناه
// إنشاء كائنات DateTime من تاريخي البداية والنهاية
// تطبيق التعديل على تاريخ البداية
// مقارنة تاريخ البداية المعدل مع تاريخ النهاية
// تحديد أي التاريخين هو الأحدث

// إخراج التاريخ الأحدث بتنسيق Y-m-d
echo $laterDate;
?>

جميع دروس Logic & Flow