Einführung in das DateTime-Objekt
Teil des Abschnitts Logik & Ablauf der PHP-Journey von Coddy — Lektion 48 von 68.
Während die prozeduralen Funktionen wie date(), time() und strtotime() gut für grundlegende Datumsoperationen funktionieren, bietet PHP durch die DateTime-Klasse einen leistungsfähigeren und flexibleren Ansatz. Diese objektorientierte Methode bietet eine bessere Organisation, eine klarere Syntax und fortgeschrittenere Funktionen für die Arbeit mit Datums- und Zeitangaben.
Die DateTime-Klasse repräsentiert einen spezifischen Zeitpunkt als Objekt, den Sie dann mit verschiedenen Methoden bearbeiten und formatieren können. Im Gegensatz zu prozeduralen Funktionen, die mit separaten Zeitstempeln und Format-Strings arbeiten, kapselt ein DateTime-Objekt sowohl die Datums-/Zeitdaten als auch die Operationen, die Sie darauf ausführen können.
<?php
$now = new DateTime();
echo $now->format('Y-m-d H:i:s'); // Ausgabe etwa: 2024-03-15 14:30:25
?>Das Erstellen eines neuen DateTime-Objekts ohne Parameter setzt es automatisch auf das aktuelle Datum und die Uhrzeit.
Der objektorientierte Ansatz macht Ihren Code lesbarer und wartbarer, insbesondere wenn Sie mehrere Operationen am selben Datum durchführen müssen. Dies wird sich als besonders nützlich erweisen, wenn Sie mit komplexeren Datumsberechnungen und Formatierungsanforderungen arbeiten.
Aufgabe
EinfachSie erhalten eine Eingabe: eine Datumszeichenfolge im Format Y-m-d H:i:s (Beispiel: 2024-03-15 14:30:25).
Lesen Sie die eingegebene Datumszeichenfolge ein, erstellen Sie ein DateTime-Objekt mit dieser Datumszeichenfolge als Parameter und geben Sie das DateTime-Objekt direkt aus.
Wenn Sie ein DateTime-Objekt mit einem Datumszeichenfolgen-Parameter erstellen, repräsentiert es diesen spezifischen Zeitpunkt anstelle des aktuellen Datums und der aktuellen Uhrzeit. Verwenden Sie einfach echo für das Objekt, um es anzuzeigen.
Eingabeformat: Eine Zeile, die eine Datumszeichenfolge im Format Y-m-d H:i:s enthält (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
// Lies die Eingabe des Datums-Strings
$dateString = trim(fgets(STDIN));
// TODO: Erstelle ein DateTime-Objekt unter Verwendung des Datums-Strings 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