まとめ:日付の計算
CoddyのPHPジャーニー「論理とフロー」セクションの一部 — レッスン 51/68。
チャレンジ
簡単開始日、終了日、および修正文字列の3つの入力を受け取ります。最初の2つの入力は Y-m-d 形式(例:2024-03-15)の日付文字列であり、3つ目の入力は +5 days、-2 weeks、または +1 month のような修正式です。
3つの入力をすべて読み込み、開始日と終了日から2つの DateTime オブジェクトを作成し、開始日に修正式を適用します。その後、修正された開始日と元の終了日のどちらが後の日付であるかを判定してください。後の方の日付を Y-m-d 形式で出力してください。
入力形式:
- 1行目:
Y-m-d形式の開始日文字列(例:2024-03-15) - 2行目:
Y-m-d形式の終了日文字列(例:2024-04-10) - 3行目: 修正文字列(例:
+5 daysまたは-2 weeks)
期待される出力: 修正された開始日と元の終了日のうち、後の方の日付を Y-m-d 形式で出力
自分で試してみよう
<?php
// 3つの入力を読み込む
$startDate = trim(fgets(STDIN));
$endDate = trim(fgets(STDIN));
$modification = trim(fgets(STDIN));
// TODO: 以下にコードを記述してください
// 開始日と終了日からDateTimeオブジェクトを作成する
// 開始日に変更を適用する
// 変更された開始日と終了日を比較する
// どちらの日付が後かを判定する
// 後の日付をY-m-d形式で出力する
echo $laterDate;
?>