Menu
CoddyTech

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.

challenge icon

Aufgabe

Einfach

Du 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, Y oder H:i:s oder Y-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;
?>
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Logik & Ablauf

Übe selbstständig: Online-PHP-Compiler