Zusammenfassung: Datumsberechnungen
Teil des Abschnitts Logik & Ablauf der PHP-Journey von Coddy — Lektion 51 von 68.
Aufgabe
EinfachSie erhalten drei Eingaben: ein Startdatum, ein Enddatum und einen Format-String. Die ersten beiden Eingaben sind Datumszeichenfolgen im Format Y-m-d (Beispiel: 2024-03-15), und die dritte Eingabe ist ein Modifikationsausdruck wie +5 days, -2 weeks oder +1 month.
Lesen Sie alle drei Eingaben ein, erstellen Sie zwei DateTime-Objekte aus dem Start- und Enddatum, wenden Sie den Modifikationsausdruck auf das Startdatum an und bestimmen Sie dann, welches Datum später liegt: das modifizierte Startdatum oder das ursprüngliche Enddatum. Geben Sie das spätere Datum im Format Y-m-d aus.
Eingabeformat:
- Erste Zeile: Eine Startdatums-Zeichenfolge im Format
Y-m-d(Beispiel:2024-03-15) - Zweite Zeile: Eine Enddatums-Zeichenfolge im Format
Y-m-d(Beispiel:2024-04-10) - Dritte Zeile: Eine Modifikationszeichenfolge (Beispiel:
+5 daysoder-2 weeks)
Erwartete Ausgabe: Das spätere Datum zwischen dem modifizierten Startdatum und dem ursprünglichen Enddatum, formatiert als Y-m-d
Probier es selbst
<?php
// Die drei Eingaben lesen
$startDate = trim(fgets(STDIN));
$endDate = trim(fgets(STDIN));
$modification = trim(fgets(STDIN));
// TODO: Schreiben Sie Ihren Code unten
// DateTime-Objekte aus dem Start- und Enddatum erstellen
// Die Modifikation auf das Startdatum anwenden
// Das modifizierte Startdatum mit dem Enddatum vergleichen
// Bestimmen, welches Datum später liegt
// Das spätere Datum im Format Y-m-d ausgeben
echo $laterDate;
?>Alle Lektionen in Logik & Ablauf
1Fortgeschrittene Funktionen
Anonyme FunktionenClosures und 'use'Arrow FunctionsCallback-FunktionenVerwendung von 'call_user_func'VariablenfunktionenReferenzübergabeRekursive FunktionenRückblick: Funktions-Medley4Mehrdimensionale Arrays
Ein 2D-Array erstellenZugriff auf 2D-Array-ElementeÄndern von 2D-Array-ElementenIterieren mit verschachtelten Schleifen2D assoziative ArraysZusammenfassung: Einfache Gitter-Übung7Arbeiten mit Datum und Uhrzeit
Die 'date()'-FunktionUnix-Timestamps mit 'time()'Einführung in das DateTime-ObjektDateTime-Objekte formatierenDateTime-Objekte ändernZusammenfassung: Datumsberechnungen2Fortgeschrittene Array-Manipulationen
Hinzufügen mit 'array_push'Entfernen mit 'array_pop'Hinzufügen mit 'array_unshift'Entfernen mit 'array_shift'Indizierte Arrays zusammenführenAssoziative Arrays zusammenführenExtrahieren mit 'array_slice'Werte mit 'in_array'Schlüssel mit 'array_search'Rückblick: Playlist-Übung3Arrays sortieren
Indizierte Arrays aufsteigend sortierenIndizierte Arrays absteigend sortierenAssoziative Arrays nach Wert sortierenAssoziative Arrays nach Schlüssel sortierenNatürliche SortierungBenutzerdefiniertes Sortieren mit 'usort'Recap: Leaderboard-Sortierung