Récapitulatif : Calculs de dates
Fait partie de la section Logique & Flux du Journey PHP de Coddy — leçon 51 sur 68.
Défi
FacileVous recevrez trois entrées : une date de début, une date de fin et une chaîne de formatage. Les deux premières entrées sont des chaînes de caractères représentant des dates au format Y-m-d (exemple : 2024-03-15), et la troisième entrée est une expression de modification comme +5 days, -2 weeks ou +1 month.
Lisez les trois entrées, créez deux objets DateTime à partir des dates de début et de fin, appliquez l'expression de modification à la date de début, puis déterminez quelle date est la plus tardive : la date de début modifiée ou la date de fin d'origine. Affichez la date la plus tardive au format Y-m-d.
Format d'entrée :
- Première ligne : Une chaîne de date de début au format
Y-m-d(exemple :2024-03-15) - Deuxième ligne : Une chaîne de date de fin au format
Y-m-d(exemple :2024-04-10) - Troisième ligne : Une chaîne de modification (exemple :
+5 daysou-2 weeks)
Sortie attendue : La date la plus tardive entre la date de début modifiée et la date de fin d'origine, formatée en Y-m-d
Essayez vous-même
<?php
// Lire les trois entrées
$startDate = trim(fgets(STDIN));
$endDate = trim(fgets(STDIN));
$modification = trim(fgets(STDIN));
// TODO: Écrivez votre code ci-dessous
// Créer des objets DateTime à partir des dates de début et de fin
// Appliquer la modification à la date de début
// Comparer la date de début modifiée avec la date de fin
// Déterminer quelle date est la plus tardive
// Afficher la date la plus tardive au format Y-m-d
echo $laterDate;
?>Toutes les leçons de Logique & Flux
1Fonctions avancées
Fonctions anonymesClosures et 'use'Fonctions fléchéesFonctions de rappelUtilisation de 'call_user_func'Fonctions variablesPassage par référenceFonctions récursivesRécapitulatif : Mélange de fonctions4Tableaux multidimensionnels
Créer un tableau 2DAccéder aux éléments d'un tableau 2DModifier les éléments d'un tableau 2DItérer avec des boucles imbriquéesTableaux associatifs 2DRécapitulatif : Exercice de grille simple7Travailler avec les dates et les heures
La fonction 'date()'Timestamps Unix avec 'time()'Introduction à l'objet DateTimeFormater les objets DateTimeModifier les objets DateTimeRécapitulatif : Calculs de dates2Manipulations avancées de tableaux
Ajouter avec 'array_push'Supprimer avec 'array_pop'Ajouter avec 'array_unshift'Supprimer avec 'array_shift'Fusionner des tableaux indexésFusionner des tableaux associatifsExtraire avec 'array_slice'Valeurs avec 'in_array'Clés avec 'array_search'Récapitulatif : Exercice Playlist3Tri des tableaux
Trier les tableaux indexés par ordre croissantTrier les tableaux indexés par ordre décroissantTrier les tableaux associatifs par valeurTrier les tableaux associatifs par cléTri par ordre naturelTri personnalisé avec 'usort'Récapitulatif : Tri d'un classement