Menu
Coddy logo textTech

タスクを完了としてマーク

CoddyのPHPジャーニー「基礎」セクションの一部 — レッスン 57/71。

challenge icon

チャレンジ

簡単

前回のレッスンでは、タスクとそのステータスを表示しました。今度は、特定のタスクを完了としてマークする機能を追加します。

タスク記述のための4行の入力を読み込みます(これまで通り、3つの初期タスクと1つの新しいタスク)。次に5番目の入力として、完了としてマークするタスクのインデックスを表す整数を読み込みます(0ベース)。

4つのタスクすべてを含む$todos配列を作成した後、指定されたインデックスのタスクの"completed"値をtrueに更新します。

次に、配列をループし、各タスクを以下の形式で出力します:

  • タスクが完了している場合:- [task description] (Done)
  • タスクが保留中の場合:- [task description] (Pending)

各タスクを別々の行に印刷します。

例:

入力がBuy groceriesWalk the dogFinish homeworkCall mom、および1の場合、出力は次のようになります:

- Buy groceries (Pending)
- Walk the dog (Done)
- Finish homework (Pending)
- Call mom (Pending)

入力がClean roomRead bookExerciseCook dinner、および3の場合、出力は次のようになります:

- Clean room (Pending)
- Read book (Pending)
- Exercise (Pending)
- Cook dinner (Done)

自分で試してみよう

<?php
// 事前に定義されたタスクコレクション
$tasks = [
    [
        "description" => "Buy groceries",
        "completed" => false
    ],
    [
        "description" => "Walk the dog", 
        "completed" => true
    ],
    [
        "description" => "Read a book",
        "completed" => false
    ],
    [
        "description" => "Exercise",
        "completed" => false
    ]
];

// 入力を読み取る
$taskIndex = trim(fgets(STDIN));
$newStatus = trim(fgets(STDIN));

// TODO: 以下にコードを書いてください
// 入力を適切な型に変換し、タスクを更新する
// 更新されたタスクメッセージを表示する
// すべてのタスクとそのステータスを表示する
// 合計、完了済み、保留中のカウントを含むサマリーを表示する

?>

基礎のすべてのレッスン