DateTime-Objekte formatieren
Teil des Abschnitts Logik & Ablauf der PHP-Journey von Coddy. Lektion 49 von 68.
Da du jetzt ein DateTime-Objekt hast, musst du es in ein lesbares Zeichenkettenformat umwandeln. Die Methode format() ist dein Werkzeug, um ein DateTime-Objekt in jedes Datums- oder Zeitformat umzuwandeln, das du für die Anzeige benötigst.
Die Methode format() verwendet genau dieselben Formatzeichen, die du mit der Funktion date() kennengelernt hast. Durch diese Konsistenz kannst du dein vorhandenes Wissen leicht auf DateTime-Objekte anwenden. Du rufst die Methode direkt für dein DateTime-Objekt auf und übergibst den Format-String als Parameter.
<?php
$now = new DateTime();
echo $now->format("Y-m-d"); // Ausgabe: 2024-03-15
echo $now->format("H:i:s"); // Ausgabe: 14:30:25
echo $now->format("l, F j, Y"); // Ausgabe: Friday, March 15, 2024
?>Der objektorientierte Ansatz mit format() sorgt für eine bessere Codeorganisation, besonders wenn du mit demselben Datum mehrfach arbeitest. Du erstellst das DateTime-Objekt einmal und kannst es in deinem Code auf unterschiedliche Weise formatieren, ohne wiederholt prozedurale Funktionen aufzurufen.
Aufgabe
EinfachDu erhältst zwei Eingaben: eine Datumszeichenfolge im Format Y-m-d H:i:s und eine Formatzeichenfolge. Die erste Eingabe ist ein bestimmtes Datum und eine bestimmte Uhrzeit (Beispiel: 2024-03-15 14:30:25), und die zweite Eingabe ist eine Formatzeichenfolge, die angibt, wie das Datum angezeigt werden soll (Beispiel: l, F j, Y).
Lies beide Eingaben ein, erstelle mit der Datumszeichenfolge ein DateTime-Objekt, verwende die Methode format(), um das DateTime-Objekt entsprechend der angegebenen Formatzeichenfolge umzuwandeln, und gib das formatierte Ergebnis aus.
Eingabeformat:
- Erste Zeile: Eine Datumszeichenfolge im Format
Y-m-d H:i:s(Beispiel:2024-03-15 14:30:25) - Zweite Zeile: Eine Formatzeichenfolge (Beispiel:
l, F j, YoderH:i:soderY-m-d)
Erwartete Ausgabe: Das Datum, formatiert entsprechend der angegebenen Formatzeichenfolge
Probier es selbst
<?php
// Lies die Datumszeichenfolge ein
$dateString = trim(fgets(STDIN));
// Lies die Formatzeichenfolge ein
$formatString = trim(fgets(STDIN));
// TODO: Schreibe deinen Code unten
// Erstelle ein DateTime-Objekt und formatiere es gemäß der Formatzeichenfolge
// Gib das formatierte Datum aus
echo $formattedDate;
?>Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
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Übe selbstständig: Online-PHP-Compiler