Für zeitgesteuerte Inhalte sind Datum- und Uhrzeitfunktionen unerlässlich. Grundlage bildet der von Unix-Systemen verwendete timestamp, dieser zählt die Sekunden seit dem 1.1.1970 um 00:00 Uhr.
Der daraus resultirende 10-stellige Wert ist für eine Datum- bzw. Zeit-Anzeige denkbar ungeeignet. Der gravierende Vorteil allerdings mit einer Zahl kann man rechnen. Somit kann man beispielsweise durch einfache Addition der Sekunden zum jetzigen Timestamp einen Zeitpunkt in der Zukunft berechnen.
Mit dem Befehl time() wird der aktuelle Timestamp ermittelt und in der Variable $timestamp gespeichert.
<?php echo $timestamp = time(); ?>
Der Timestamp 1328586944 stellt den Zeitpunkt 07.02.2012 04:55:44 Uhr dar, subtrahiert man von diesem Wert 86400 (60 Sekunden * 60 Minuten * 24 Stunden), erhält man ausgehend vom jetzigen Zeitpunkt den neuen Wert 1328500544, und somit 06.02.2012 04:55:44 den Zeitpunkt vor exakt 24 Stunden.
Mit der Funktion date(Format, $timestamp) wird die Variable $timestamp formatiert.
<?php
$datum = date('d.m.Y',$timestamp);
$uhrzeit = date('H:i:s',$timestamp);
echo $datum .' - '. $uhrzeit .' Uhr';
?>
| Format Zeichen |
Beschreibung | Beispiel für Rückgabewerte |
|---|---|---|
| c | ISO 8601 Datum (hinzugefügt in PHP 5) | 2012-02-07T04:55:44+01:00 |
| d | Tag des Monats, 2-stellig mit führender Null | 07 |
| g | 12-Stunden-Format, ohne führende Nullen | 4 |
| G | 24-Stunden-Format, ohne führende Nullen | 4 |
| h | 12-Stunden-Format, mit führenden Nullen | 04 |
| H | 24-Stunden-Format, mit führenden Nullen | 04 |
| i | Minuten mit führenden Nullen | 55 |
| I (großes i) | Fällt ein Datum in die Sommerzeit | 1 bei Sommerzeit, ansonsten 0. |
| j | Tag des Monats ohne führende Nullen | 7 |
| L | Schaltjahr oder nicht | 1 für ein Schaltjahr, ansonsten 0. |
| m | Monat als Zahl, mit führenden Nullen | 02 |
| n | Monatszahl, ohne führende Nullen | 2 |
| O | Zeitunterschied zur Greenwich time (GMT) in Stunden | Beispiel: +0200 |
| s | Sekunden, mit führenden Nullen | 44 |
| t | Anzahl der Tage des angegebenen Monats | 29 |
| T | Zeitzoneneinstellung des Rechners | CET, MDT ... |
| U | Sekunden seit Beginn der UNIX-Epoche | 1328586944 |
| w | Numerischer Tag einer Woche | 0 (für Sonntag) bis 6 (für Samstag) |
| W | ISO-8601 Wochennummer des Jahres (hinzugefügt in PHP 4.1.0) | 06 (die 06 Woche im Jahr) |
| Y | Vierstellige Jahreszahl | 2012 |
| y | Jahreszahl, zweistellig | 12 |
| z | Der Tag eines Jahres | 37 |
Die vollständige Liste findet sich unter www.php.net
Mit der Funktion strtotime($time,$now) wird ein beliebiges in englischer Textform angegebenes Datum in einen Timestamp umgewandelt.
<?php
// die wohl am häufigsten genutzte Funktion
// um ein in einer Datenbank, in englischer Textform angegebenes Datum,
// in ein deutsches Format umzuwandeln
echo date("d.m.Y", strtotime($result["Datum in Datenbank"]))
// Das Beispiel erzeugt folgende Ausgabe:
Ausgabe als formatiertes Datum: 07.02.2012
?>
<?php
echo strtotime('now'), '<br />';
// Das Beispiel erzeugt folgende Ausgabe:
Ausgabe als Timestamp:1328586944 und zur Kontrolle als formatiertes Datum: 07.02.2012
echo strtotime('01 January 2020'), '<br />';
// Das Beispiel erzeugt folgende Ausgabe:
Ausgabe als Timestamp:1577833200 und zur Kontrolle als formatiertes Datum: 01.01.2020
echo strtotime('+1 day'), '<br />';
// Das Beispiel erzeugt folgende Ausgabe:
Ausgabe als Timestamp:1328673344 und zur Kontrolle als formatiertes Datum: 08.02.2012
echo strtotime('+1 week'), '<br />';
// Das Beispiel erzeugt folgende Ausgabe:
Ausgabe als Timestamp:1329191744 und zur Kontrolle als formatiertes Datum: 14.02.2012
echo strtotime('+1 week 2 days 4 hours 2 seconds'), '<br />';
// Das Beispiel erzeugt folgende Ausgabe:
Ausgabe als Timestamp:1330163746 und zur Kontrolle als formatiertes Datum: 25.02.2012 10:02:46
echo strtotime('next Thursday'), '<br />';
// Das Beispiel erzeugt folgende Ausgabe:
Ausgabe als Timestamp:1328742000 und zur Kontrolle als formatiertes Datum: 09.02.2012
echo strtotime('last Monday'), '<br />';
// Das Beispiel erzeugt folgende Ausgabe:
Ausgabe als Timestamp:1328482800 und zur Kontrolle als formatiertes Datum: 06.02.2012
?>
Mit der Funktion mktime() werden die übergebenen Argumente in einen Timestamp umgewandelt.
<?php $timestamp = mktime( 04, 55, 44, 07, 02, 2012 ); echo $timestamp; ?>
Das Beispiel erzeugt folgende Ausgabe: 1341197744
Die Parameter innerhalb der Klammer von links nach rechts: Stunde, Minute, Sekunde, Monat, Tag, Jahr. Der Wert entspricht also dem 07.02.2012 um 04:55:44 Uhr. Einzelne Parameter können von rechts nach links weggelassen werden. Sie werden dann mit den Werten der lokalen Systemzeit bzw. des lokalen Systemdatums ersetzt.
Den alphabetisch nächsten und vorherigen Datensatzes aus einer Datenbank ermitteln und in alphatischer Reihenfolge den nächsten und vorherigen Datensatz ausgeben.
In einer Datenbanktabelle einen bestimmten Teil eines Strings suchen und diesen dann auszutauschen.
Beim Aufruf einer Website sendet jeder Browser eine Kennung, die dem Server angibt, um welchen "User-Agent" es sich handelt.
Für zeitgesteuerte Inhalte sind Datum- und Uhrzeitfunktionen unerlässlich. Grundlage bildet der von Unix-Systemen verwendete Timestamp.
Häufig genügt es zu wissen, wie viele Zeichen der Text beinhaltet, php kann jedoch weitaus mehr.
Häufig ist es notwendig mehrere Zeichen oder Zeichenfolgen innerhalb eines Strings zu ersetzen.
Standardkonformer HTML-Code erfordert eine korrekte Ausgabe sämtlicher Literalen, dazu gehören auch und vor allem soggenannte HTML-Entity.
Um die Farben einzelner Elemente auf Webseiten festzulegen, gibt es zwei Möglichkeiten. Die Farben können als RGB-Werte im Hexadezimalformat oder ...
Die PHP PCRE Funktionen sind eine Programmbibliothek zur Auswertung von Regulären Ausdrücken ...
Reguläre Ausdrücke, auch Regex oder RegExp genannt, sind Zeichen- ketten, die ...
Praxisbzogene Regular Expression Beispiele für die Anwendung in PHP.