Menu
Coddy logo textTech

Lister les événements à venir

Fait partie de la section Logique & Flux du Journey PHP de Coddy — leçon 61 sur 68.

challenge icon

Défi

Facile

Vous recevrez deux entrées : une chaîne JSON représentant le tableau des événements existants, et une chaîne de date au format YYYY-MM-DD représentant la date d'aujourd'hui.

La première entrée sera une chaîne JSON dans ce format : [{"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"}]

La deuxième entrée sera une chaîne de date dans ce format : 2024-04-01

Lisez les deux entrées et décodez la chaîne JSON dans un tableau d'événements. Créez deux objets DateTime : un pour la date d'aujourd'hui (en utilisant la deuxième entrée) et un pour la date de chaque événement au fur et à mesure que vous parcourez les événements.

Filtrez et affichez uniquement les événements à venir - les événements dont la date est supérieure ou égale à la date d'aujourd'hui. Pour chaque événement à venir, affichez-le au format suivant :

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

Affichez chaque événement à venir sur une ligne séparée, dans l'ordre où ils apparaissent dans le tableau. Si la date d'un événement est antérieure à la date d'aujourd'hui, ne l'affichez pas.

Format d'entrée :

  • Première ligne : Une chaîne JSON représentant le tableau d'événements avec les clés name, date, et location
  • Deuxième ligne : Une chaîne de date au format YYYY-MM-DD représentant la date d'aujourd'hui (exemple : 2024-04-01)

Sortie attendue : Chaque événement à venir affiché sur une ligne séparée au format : Upcoming: [name] on [date] at [location]

Essayez vous-même

<?php
// Lire la chaîne JSON des événements
$eventsJson = fgets(STDIN);
$events = (array)json_decode($eventsJson, true);

// Lire la date d'aujourd'hui
$todayDate = trim(fgets(STDIN));

// À FAIRE : Écrivez votre code ci-dessous
// Créer un objet DateTime pour la date d'aujourd'hui
// Parcourir les événements et comparer les dates
// Afficher les événements à venir dans le format requis

?>

Toutes les leçons de Logique & Flux