Datumsfunktionen
time
die Funktion time() gibt die Anzahl der vergangenen Sekunden seit dem 01.01.1970 00:00:00 GMT zurück. Das ist der Beginn der UNIX-Epoche.
Das scheint am Anfang nicht viel Sinn zu machen, aber damit läßt sich wunderbar rechnen:
die Differenz zwischen 2 Zeitpunkten:
PHP-Code:
01
02
03
04
05
06
<?php
$time_a = 10010;
$time_b = 10000;
$diff = $time_a - $time_b;
echo 'Die Differenz sind '.abs($diff).' Sekunden';
?>
Auf eine Fallunterscheidung für den Fall, dass die Differenz negativ sei wird hier verzichtet. Den Betrag der Differenz liefert die Funktion
abs()date
Mit der Funktion date() hat man die Möglichkeit eine formatierte Datumsausgabe zu realisieren.
Als Formatierungszeichen kommt eine Reihe definierte Zeichen in Frage, die
hier näher erklärt werden.Hier wird nur auf eine Auswahl eingegangen.
PHP-Code:
01
02
03
<?php
echo date('Y');
?>
gibt das aktuelle Jahr aus.
Hingegen gibt
PHP-Code:
01
02
03
<?php
echo date('m');
?>
den aktuellen Monat aus.
Eine Kombination der beiden (erweitert um den Tag:
PHP-Code:
01
02
03
<?php
echo date('d.m.Y');
?>
Dabei wird das Zeichen . nicht als Formatierungszeichen behandelt, sondern als Zeichen ausgegeben.
die Uhrzeit lässt sich zB. so darstellen:
PHP-Code:
01
02
03
<?php
echo date('H:i:s');
?>
Als weitere Parameter akzeptiert date() auch einen timestamp (einen Zeitstempel).
Damit ist es möglich nicht nur die aktuelle Zeit darzustellen, sondern auch das Zeitformat eines definierten Zeitpunktes.
Beispiel:
PHP-Code:
01
02
03
<?php
echo date('d.m.Y', 123413);
?>
mktime
mit der Funktion mktime() ist es nun möglich sich einen nahezu beliebigen Zeitstempel zu erzeugen, um ihn dann z.B. in Kombination mit date() benutzen zu können.
PHP-Code:
01
02
03
<?php
echo mktime($stunde, $minute, $sekunde, $monat, $tag, $jahr);
?>
Nun muss man nicht immer alle Parameter angeben. Für die Bestimmung eines exakten Zeitpunktes innerhalb des Wertebereiches (zwischen 01.01.1970 und 19.01.2038) sind jedoch alle von nöten.
Nun kann man natürlich auch date() und mktime() kombinieren: