Einführung in das DateTime-Objekt
Teil des Abschnitts Logik & Ablauf der PHP-Journey von Coddy. Lektion 48 von 68.
Während prozedurale Funktionen wie date(), time() und strtotime() gut für grundlegende Datumsoperationen geeignet sind, bietet PHP durch die Klasse DateTime einen leistungsfähigeren und flexibleren Ansatz. Diese objektorientierte Methode ermöglicht eine bessere Organisation, eine klarere Syntax und fortgeschrittenere Funktionen für die Arbeit mit Datumsangaben und Uhrzeiten.
Die Klasse DateTime stellt einen bestimmten Zeitpunkt als Objekt dar, das du anschließend mithilfe verschiedener Methoden bearbeiten und formatieren kannst. Im Gegensatz zu prozeduralen Funktionen, die mit separaten Zeitstempeln und Formatzeichenfolgen arbeiten, kapselt ein DateTime-Objekt sowohl die Datums-/Zeitdaten als auch die daran möglichen Operationen.
<?php
$now = new DateTime();
echo $now->format('Y-m-d H:i:s'); // Outputs something like: 2024-03-15 14:30:25
?>Das Erstellen eines neuen DateTime-Objekts ohne Parameter setzt es automatisch auf das aktuelle Datum und die aktuelle Uhrzeit.
Der objektorientierte Ansatz macht deinen Code lesbarer und leichter zu warten, insbesondere wenn du mehrere Operationen mit demselben Datum durchführen musst. Das wirst du besonders nützlich finden, wenn du mit komplexeren Datumsberechnungen und Anforderungen an die Formatierung arbeitest.
Aufgabe
EinfachDu erhältst eine Eingabe: eine Datumszeichenfolge im Format Y-m-d H:i:s (Beispiel: 2024-03-15 14:30:25).
Lies die Datumszeichenfolge der Eingabe ein, erstelle ein DateTime-Objekt, indem du diese Datumszeichenfolge als Parameter verwendest, und gib das DateTime-Objekt direkt aus.
Wenn du ein DateTime-Objekt mit einer Datumszeichenfolge als Parameter erstellst, stellt es diesen bestimmten Zeitpunkt dar und nicht das aktuelle Datum und die aktuelle Uhrzeit. Gib einfach das Objekt mit echo aus, um es anzuzeigen.
Eingabeformat: Eine Zeile mit einer Datumszeichenfolge im Format Y-m-d H:i:s (Beispiel: 2024-03-15 14:30:25)
Erwartete Ausgabe: Das Datum und die Uhrzeit, formatiert als Y-m-d H:i:s
Probier es selbst
<?php
// Lese die Datumszeichenfolge-Eingabe
$dateString = trim(fgets(STDIN));
// TODO: Erstelle ein DateTime-Objekt mit der Datumszeichenfolge und gib es aus
?>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