Datum & Uhrzeit ermitteln
In PHP können sie das aktuelle Datum und die aktuelle Uhrzeit mit der date()-Funktion und der DateTime-Klasse
ermitteln.
Hier sind einige grundlegende Beispiele, wie sie diese verwenden können:
Verwendung der date()-Funktion
Die date()-Funktion gibt das aktuelle Datum und die aktuelle Uhrzeit basierend auf dem angegebenen Format zurück.
<?php
// Aktuelles Datum und Uhrzeit
echo "Aktuelles Datum und Uhrzeit: " . date('Y-m-d H:i:s') . "\n";
// Nur das aktuelle Datum
echo "Aktuelles Datum: " . date('Y-m-d') . "\n";
// Nur die aktuelle Uhrzeit
echo "Aktuelle Uhrzeit: " . date('H:i:s') . "\n";
// Andere Formate
echo "Jahr: " . date('Y') . "\n";
echo "Monat: " . date('m') . "\n";
echo "Tag: " . date('d') . "\n";
echo "Stunde: " . date('H') . "\n";
echo "Minute: " . date('i') . "\n";
echo "Sekunde: " . date('s') . "\n";
?>
Verwendung der DateTime-Klasse
Die DateTime-Klasse bietet erweiterte Funktionen zur Arbeit mit Datum und Uhrzeit.
<?php
// Erstellen eines DateTime-Objekts für das aktuelle Datum und die aktuelle Uhrzeit
$date = new DateTime();
// Formatierung des Datums und der Uhrzeit
echo "Aktuelles Datum und Uhrzeit: " . $date->format('Y-m-d H:i:s') . "\n";
// Nur das aktuelle Datum
echo "Aktuelles Datum: " . $date->format('Y-m-d') . "\n";
// Nur die aktuelle Uhrzeit
echo "Aktuelle Uhrzeit: " . $date->format('H:i:s') . "\n";
// Andere Formate
echo "Jahr: " . $date->format('Y') . "\n";
echo "Monat: " . $date->format('m') . "\n";
echo "Tag: " . $date->format('d') . "\n";
echo "Stunde: " . $date->format('H') . "\n";
echo "Minute: " . $date->format('i') . "\n";
echo "Sekunde: " . $date->format('s') . "\n";
?>
Zeitzone festlegen
Sie können die Zeitzone festlegen, um sicherzustellen, dass das Datum und die Uhrzeit in der gewünschten Zeitzone
ermittelt werden.
Mit der date_default_timezone_set()-Funktion
<?php
// Zeitzone festlegen
date_default_timezone_set('Europe/Berlin');
// Aktuelles Datum und Uhrzeit
echo "Aktuelles Datum und Uhrzeit: " . date('Y-m-d H:i:s') . "\n";
?>
Mit der DateTime-Klasse
<?php
// Erstellen eines DateTime-Objekts für das aktuelle Datum und die aktuelle Uhrzeit mit Zeitzone
$date = new DateTime('now', new DateTimeZone('Europe/Berlin'));
// Formatierung des Datums und der Uhrzeit
echo "Aktuelles Datum und Uhrzeit: " . $date->format('Y-m-d H:i:s') . "\n";
?>
Zeitstempel (Timestamp) ermitteln
Ein Zeitstempel ist die Anzahl der Sekunden seit dem 1. Januar 1970 00:00:00 UTC (Unix-Epoche).
<?php
// Aktueller Zeitstempel
$timestamp = time();
echo "Aktueller Zeitstempel: " . $timestamp . "\n";
// Datum und Uhrzeit aus Zeitstempel
$date = (new DateTime())->setTimestamp($timestamp);
echo "Datum und Uhrzeit aus Zeitstempel: " . $date->format('Y-m-d H:i:s') . "\n";
?>
Mit diesen Beispielen können sie das aktuelle Datum und die aktuelle Uhrzeit in PHP ermitteln und formatieren.
Die date()-Funktion ist einfach und schnell, während die DateTime-Klasse leistungsstarke Funktionen für komplexere
Anforderungen bietet.
Deutsches Format
Um das Datum und die Uhrzeit im deutschen Format zu ermitteln und auszugeben, können sie sowohl die date()-Funktion
als auch die DateTime-Klasse in PHP verwenden. Das deutsche Datumsformat ist typischerweise TT.MM.JJJJ und das
Zeitformat ist HH:MM:SS.
Verwendung der date()-Funktion
Die date()-Funktion in PHP kann mit dem Formatstring d.m.Y H:i:s verwendet werden, um Datum und Uhrzeit im
deutschen Format anzuzeigen.
<?php
// Zeitzone auf Mitteleuropäische Zeit (MEZ) einstellen
date_default_timezone_set('Europe/Berlin');
// Aktuelles Datum und Uhrzeit im deutschen Format
echo "Aktuelles Datum und Uhrzeit: " . date('d.m.Y H:i:s') . "\n";
// Nur das aktuelle Datum im deutschen Format
echo "Aktuelles Datum: " . date('d.m.Y') . "\n";
// Nur die aktuelle Uhrzeit
echo "Aktuelle Uhrzeit: " . date('H:i:s') . "\n";
?>
Verwendung der DateTime-Klasse
Die DateTime-Klasse bietet ebenfalls die Möglichkeit, Datum und Uhrzeit im deutschen Format zu formatieren.
<?php
// Erstellen eines DateTime-Objekts für das aktuelle Datum und die aktuelle Uhrzeit mit Zeitzone
$date = new DateTime('now', new DateTimeZone('Europe/Berlin'));
// Formatierung des Datums und der Uhrzeit im deutschen Format
echo "Aktuelles Datum und Uhrzeit: " . $date->format('d.m.Y H:i:s') . "\n";
// Nur das aktuelle Datum im deutschen Format
echo "Aktuelles Datum: " . $date->format('d.m.Y') . "\n";
// Nur die aktuelle Uhrzeit
echo "Aktuelle Uhrzeit: " . $date->format('H:i:s') . "\n";
?>
Mit diesen Beispielen können sie Datum und Uhrzeit im deutschen Format anzeigen. Die date()-Funktion und die
DateTime-Klasse
bieten beide einfache Methoden, um dies zu erreichen. Stellen sie sicher, dass sie die richtige Zeitzone
einstellen, um die korrekte lokale Zeit anzuzeigen.
Um deutsche Monatsnamen und Wochentage in PHP anzuzeigen, konnte man die Funktionalität der DateTime-Klasse
und die setlocale()-Funktion zusammen mit der strftime()-Funktion nutzen.
Da strftime() in PHP 8.1 als veraltet markiert wurde, sollten wir eine alternative Methode verwenden,
um das Datum und die Uhrzeit im deutschen Format anzuzeigen, insbesondere mit deutschen Monatsnamen und Wochentagen.
Verwendung von IntlDateFormatter
Hier ist ein Beispiel, wie sie die IntlDateFormatter-Klasse verwenden können, um Datum und Uhrzeit im deutschen
Format anzuzeigen:
<?php
// Zeitzone auf Mitteleuropäische Zeit (MEZ) einstellen
date_default_timezone_set('Europe/Berlin');
// Erstellen eines DateTime-Objekts für das aktuelle Datum und die aktuelle Uhrzeit
$date = new DateTime();
// Erstellen eines IntlDateFormatter für das deutsche Datum und die deutsche Uhrzeit
$fmt = new IntlDateFormatter(
'de_DE', // Locale für Deutsch (Deutschland)
IntlDateFormatter::FULL, // Vollständiges Datum
IntlDateFormatter::FULL // Vollständige Uhrzeit
);
// Formatieren des Datums und der Uhrzeit
echo "Aktuelles Datum und Uhrzeit: " . $fmt->format($date) . "\n";
// Nur das aktuelle Datum formatieren
$fmt->setPattern('EEEE, dd. MMMM yyyy');
echo "Aktuelles Datum: " . $fmt->format($date) . "\n";
// Nur den aktuellen Wochentag formatieren
$fmt->setPattern('EEEE');
echo "Aktueller Wochentag: " . $fmt->format($date) . "\n";
// Nur den aktuellen Monat formatieren
$fmt->setPattern('MMMM');
echo "Aktueller Monat: " . $fmt->format($date) . "\n";
?>
Erklärung
-
Zeitzone einstellen:
date_default_timezone_set('Europe/Berlin')
stellt sicher, dass die Zeit korrekt für
Mitteleuropa eingestellt ist.
-
DateTime-Objekt:
Ein DateTime
-Objekt wird erstellt, um das aktuelle Datum und die aktuelle Uhrzeit zu erhalten.
-
IntlDateFormatter-Objekt:
Ein IntlDateFormatter
-Objekt wird mit der deutschen Locale (de_DE
) und dem Format
für vollständiges Datum und Uhrzeit erstellt.
-
Formatieren des Datums und der Uhrzeit:
Das IntlDateFormatter
-Objekt wird verwendet, um das Datum und die Uhrzeit zu formatieren. Die
Methode setPattern()
ermöglicht die Anpassung des Ausgabeformats.
Die Verwendung von IntlDateFormatter ist eine robuste und zukunftssichere Methode, um Datum und Uhrzeit im
deutschen Format anzuzeigen, insbesondere mit deutschen Monatsnamen und Wochentagen.
Diese Methode ist vorzuziehen, da strftime() veraltet ist und in zukünftigen PHP-Versionen möglicherweise entfernt
wird.