Menu
Coddy logo textTech

Lista nadchodzących wydarzeń

Część sekcji Logika i przepływ programu ścieżki PHP w Coddy. Lekcja 61 z 68.

challenge icon

Wyzwanie

Łatwy

Otrzymasz dwa dane wejściowe: ciąg JSON reprezentujący istniejącą tablicę wydarzeń oraz ciąg z datą w formacie YYYY-MM-DD reprezentujący dzisiejszą datę.

Pierwsze dane wejściowe będą ciągiem JSON w tym formacie: [{"name":"Team Meeting","date":"2024-04-15","location":"Office"},{"name":"Conference","date":"2024-05-20","location":"Convention Center"},{"name":"Workshop","date":"2024-03-10","location":"Library"}]

Drugie dane wejściowe będą ciągiem z datą w tym formacie: 2024-04-01

Odczytaj oba dane wejściowe i zdekoduj ciąg JSON do tablicy wydarzeń. Utwórz dwa obiekty DateTime: jeden dla dzisiejszej daty (używając drugiego wejścia) i po jednym dla daty każdego wydarzenia podczas iterowania przez wydarzenia.

Odfiltruj i wyświetl tylko nadchodzące wydarzenia — te, których data jest późniejsza niż lub równa dzisiejszej dacie. Wypisz każde nadchodzące wydarzenie w następującym formacie:

Upcoming: [name] on [date] at [location]

Wypisz każde nadchodzące wydarzenie w osobnym wierszu, w kolejności, w jakiej występują w tablicy. Jeśli data wydarzenia jest wcześniejsza niż dzisiejsza data, nie wypisuj go.

Format wejściowy:

  • Pierwszy wiersz: ciąg JSON reprezentujący tablicę wydarzeń z kluczami name, date i location
  • Drugi wiersz: ciąg z datą w formacie YYYY-MM-DD reprezentujący dzisiejszą datę (na przykład: 2024-04-01)

Oczekiwane wyjście: Każde nadchodzące wydarzenie wypisane w osobnym wierszu w formacie: Upcoming: [name] on [date] at [location]

Spróbuj swoich sił

<?php
// Wczytaj ciąg JSON zawierający wydarzenia
$eventsJson = fgets(STDIN);
$events = (array)json_decode($eventsJson, true);

// Wczytaj dzisiejszą datę
$todayDate = trim(fgets(STDIN));

// TODO: Napisz swój kod poniżej
// Utwórz obiekt DateTime dla dzisiejszej daty
// Przejdź przez wydarzenia i porównaj daty
// Wypisz nadchodzące wydarzenia w wymaganym formacie

?>

Wszystkie lekcje w sekcji Logika i przepływ programu

Poćwicz samodzielnie: Kompilator PHP online