mktime

(PHP 4, PHP 5, PHP 7, PHP 8)

mktimeLiefert den Unix-Zeitstempel für ein Datum

Beschreibung

mktime(
    int $hour,
    ?int $minute = null,
    ?int $second = null,
    ?int $month = null,
    ?int $day = null,
    ?int $year = null
): int|false

Gibt den Unix-Zeitstempel entsprechend der gegebenen Argumente zurück. Dieser Zeitstempel ist ein Long Integer, der die Anzahl der Sekunden zwischen der Unix-Epoche (01. Januar 1970 00:00:00 GMT) und dem angegebenen Zeitpunkt enthält.

Einzelne Argumente können von rechts nach links weggelassen werden. Sie werden dann mit den Werten der lokalen Systemzeit bzw. des lokalen Systemdatums ersetzt.

Der Aufruf von mktime() ohne Argumente ist veraltet. time() kann verwendet werden, um den aktuellen Zeitstempel zu erhalten.

Parameter-Liste

hour

Die Anzahl der Stunden relativ zum Beginn des Tages, der durch month, day und year bestimmt ist. Negative Werte beziehen sich auf die Stunden vor Mitternacht des jeweiligen Tages. Werte größer als 23 beziehen sich auf die entsprechende Stunde des/der folgenden Tages/Tage.

minute

Die Anzahl der Minuten relativ zum Beginn der hour. Negative Werte beziehen sich auf die Minuten in der vorherigen Stunde. Werte größer als 59 beziehen sich auf die entsprechende Minute der folgenden Stunde(n).

second

Die Anzahl der Sekunden relativ zum Beginn der minute. Negative Werte beziehen sich auf die Sekunden der vorherigen Minute. Werte größer als 59 beziehen sich auf die entsprechende Minute der folgenden Minute(n).

month

Die Anzahl der Monate relativ zum Ende des vorherigen Jahres. Die Werte 1 bis 12 beziehen sich auf normale Kalendermonate des jeweiligen Jahres. Werte kleiner als 1 (einschließlich negativer Werte) beziehen sich auf die Monate des vorherigen Jahres in umgekehrter Reihenfolge, sodass 0 Dezember ist, -1 November, usw. Werte größer als 12 beziehen sich auf den entsprechenden Monat des/der folgenden Jahres/Jahre.

day

Die Anzahl der Tage relativ zum Ende des vorherigen Monats. Die Werte 1 bis 28, 29, 30 oder 31 (in Abhängigkeit vom Monat) beziehen sich auf normale Tage im aktuellen Monat. Werte kleiner als 1 (einschließlich negativer Werte) beziehen sich auf die Tage im vorherigen Monat, sodass 0 der letzte Tag des vorherigen Monats ist, -1 der vorletzte usw. Werte größer als die Anzahl von Tagen im aktuellen Monat beziehen sich auf den entsprechenden Tag in dem/den folgenden Monat(en).

year

Die Jahreszahl, die zwei- oder vierstellig angegeben werden kann. Werte von 0-69 werden den Jahren 2000-2069 zugeordnet, Werte von 70-100 den Jahren 1970-2000. Auf Systemen, auf denen time_t ein 32-Bit-Integer mit Vorzeichen ist (das sind die meisten der heutigen Systeme), beginnt der gültige Wertebereich für year bei 1901 und endet bei 2038.

Rückgabewerte

mktime() gibt den zu den übergebenen Argumenten passenden Unix-Zeitstempel zurück. Wenn die Argumente ungültig sind, gibt die Funktion false zurück.

Fehler/Exceptions

Jeder Aufruf der Datums- und Zeitfunktionen generiert einen Fehler der Stufe E_WARNING, wenn die Zeitzone ungültig ist. Siehe auch date_default_timezone_set()

Changelog

Version Beschreibung
8.0.0 hour ist nicht mehr optional.
8.0.0 minute, second, month, day und year sind nun nullable (akzeptieren den null-Wert).

Beispiele

Beispiel #1 Einfaches mktime()-Beispiel

<?php
// Setzt die zu verwendende Standardzeitzone.
date_default_timezone_set('UTC');

// Gibt aus: July 1, 2000 is on a Saturday
echo "July 1, 2000 is on a " date("l"mktime(000712000));

// Gibt etwas aus wie: 2006-04-05T01:02:03+00:00
echo date('c'mktime(123452006));
?>

Beispiel #2 mktime()-Beispiel

mktime() ist hilfreich bei Datumsberechnungen und -prüfungen, da automatisch das korrekte Datum für Werte außerhalb der gültigen Bereiche berechnet wird. So wird in den folgenden Beispielen immer die Zeichenkette "Jan-01-1998" ausgegeben.

<?php
echo date("M-d-Y"mktime(00012321997));
echo 
date("M-d-Y"mktime(0001311997));
echo 
date("M-d-Y"mktime(000111998));
echo 
date("M-d-Y"mktime(0001198));
?>

Beispiel #3 Letzter Tag eines Monats

Der letzte Tag eines gegebenen Monats kann als Tag "0" des folgenden Monats ausgedrückt werden, nicht jedoch als Tag "-1". Beide folgenden Beispiele ergeben die Zeichenkette "Der letzte Tag im Februar 2000 ist der 29."

<?php
$letzterTag 
mktime(000302000);
echo 
strftime("Der letzte Tag im Februar 2000 ist der %d."$letzterTag);
$letzterTag mktime(0004, -312000);
echo 
strftime("Der letzte Tag im Februar 2000 ist der %d."$letzterTag);
?>

Siehe auch

  • checkdate() - Prüft ein Gregorianisches Datum auf Gültigkeit
  • gmmktime() - Liefert den Unix-Zeitstempel für ein GMT-Datum
  • date() - Formatiert einen Unix-Zeitstempel
  • time() - Liefert den aktuellen Unix-Zeitstempel

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.

PHP cURL-Tutorial: Verwendung von cURL zum Durchführen von HTTP-Anfragen

cURL ist eine leistungsstarke PHP-Erweiterung, die es Ihnen ermöglicht, mit verschiedenen Servern über verschiedene Protokolle wie HTTP, HTTPS, FTP und mehr zu kommunizieren. ...

TheMax

Autor : TheMax
Kategorie: PHP-Tutorials

Midjourney Tutorial - Anleitung für Anfänger

Über Midjourney, dem Tool zur Erstellung digitaler Bilder mithilfe von künstlicher Intelligenz, gibt es ein informatives Video mit dem Titel "Midjourney Tutorial auf Deutsch - Anleitung für Anfänger" ...

Mike94

Autor : Mike94
Kategorie: KI Tutorials

Grundlagen von Views in MySQL

Views in einer MySQL-Datenbank bieten die Möglichkeit, eine virtuelle Tabelle basierend auf dem Ergebnis einer SQL-Abfrage zu erstellen. ...

admin

Autor : admin
Kategorie: mySQL-Tutorials

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

Ein data POST via Curl funktioniert nicht.

Anmorg93 Respekt, du bist ja nur um rund 10 Jahre zu spät dran.

Geschrieben von scatello am 21.11.2024 10:57:00
Forum: PHP Developer Forum
Ein data POST via Curl funktioniert nicht.

Hey, hatte auch mal das Problem. Oft liegt’s an fehlenden oder falschen Headern. Probier mal:​ $ch = curl_init(); curl_setopt($ch, CURLOPT_UR ...

Geschrieben von Anmorg93 am 21.11.2024 10:48:17
Forum: PHP Developer Forum
Probleme mit einem Linux-Befehl...

guten Tag liebe Community ;) hallo liebe Freunde auf der php-Ressource, hoffe, das landet im richtigen Unterforum also, womit ich im Moment zu ...

Geschrieben von dhubs am 15.11.2024 16:21:52
Forum: Off-Topic Diskussionen
ein .htaccess-File für eine WordPress-Installation - wie gehe ich hier vor.?

hallo und guten Tag, wie lege ich denn einen .htaccess für eine WordPress-Installation an - wie gehe ich hier vor. Kann man das denn so mache ...

Geschrieben von dhubs am 13.11.2024 15:52:54
Forum: Webmaster