Die Funktion date() in PHP
Sie befinden sich: Home > Php > Die Funktion date() in PHP
Möchte man unter PHP ein Datum ausgegeben, steht dafür die Funktion date() zur Verfügung. Der Syntax beinhaltet zwei Parameter, wobei das Zweite nicht unbedingt angegeben werden muss.
Ein Beispiel sollte den Gebrauch verdeutlichen und zeigen das die Funktion durch die Angabe eines Formates für das Datum sehr flexibel gestaltet werden kann.
1 <?php
2 /* Angenommen heute ist March 10th, 2001, 5:16:18 pm */
3
4 $heute = date("F j, Y, g:i a");
5 // Ausgabe: March 10, 2001, 5:16 pm
6
7 $heute = date("m.d.y");
8 // Ausgabe: 03.10.01
9
10 $heute = date("j, n, Y");
11 // Ausgabe: 10, 3, 2001
12
13 $heute = date("Ymd");
14 // Ausgabe: 20010310
15
16 $heute = date('h-i-s, j-m-y, it is w Day z ');
17 // Ausgabe: 05-16-17, 10-03-01, 1631 1618 6 Fripm01
18
19 $heute = date("D M j G:i:s T Y");
20 // Ausgabe: Sat Mar 10 15:16:08 MST 2001
21
22 $heute = date("H:m:s \m ")." ist Monat";
23 // Ausgabe: 17:03:17 m ist Monat
24
25 $heute = date("H:i:s");
26 // Ausgabe: 17:16:17
27 ?>
|
Die Vielzahl von Parametern ist für Neulinge im Bereich der Programmierung oftmals nicht überschaubar.
Nachfolgende Tabelle zeigt die wohl am häufigsten verwendeten Formatparameter:
| g |
<=> |
12-Stunden-Format, ohne führende Nullen ( 1 bis 12 ) |
| G |
<=> |
24-Stunden-Format, ohne führende Nullen ( 0 bis 23 ) |
| h |
<=> |
12-Stunden-Format, mit führenden Nullen ( 01 bis 12 ) |
| H |
<=> |
24-Stunden-Format, mit führenden Nullen ( 00 bis 23 ) |
| i |
<=> |
Minuten mit führenden Nullen ( 00 bis 59 ) |
s |
<=> |
Sekunden, mit führenden Nullen ( 00 bis 59 ) |
| T |
<=> |
Zeitzoneneinstellung des Rechners ( Beispiele: EST, MDT ... ) |
| c |
<=> |
ISO 8601 Datum (seit PHP 5 verfügbar ) (2004-02-12T15:19:21+00:00) |
| d |
<=> |
Tag des Monats, 2-stellig mit führender Null ( 01 bis 31 ) |
| j |
<=> |
Tag des Monats ohne führende Nullen ( 1 bis 31) |
| Y |
<=> |
Vierstellige Jahreszahl ( 1999 oder 2003 ) |
| y |
<=> |
Jahreszahl, zweistellig ( 99 oder 03 ) |
| z |
<=> |
Der Tag eines Jahres ( 0 bis 365 ) |
| t |
<=> |
Anzahl der Tage des angegebenen Monats ( 28 bis 31) |
Soll nun zum Beispiel die aktuelle Uhrzeit angegeben werden, müssen nur die oben aufgeführten Formate dafür sinnvoll kombiniert werden.
$uhrzeit = date(" H:i:s:T "); // z.B. 15:23:45:EST
Wenn direkt ein Text in die Funktion eingesetzt werden soll, muss jedes Zeichen durch einen vorangestellten Backslash ( \ ) „escaped“ werden, damit der Buchstabe gegebenenfalls nicht als Format des Datums interpretiert wird.
Eingangs wurde erwähnt das ein zusätzliches Parameter an die Funktion übergeben werden kann.
Hierbei handelt es sich um den sogenannten Unix Timestamp. Hierbei handelt es sich einen Integerwert, der praktisch die verstrichenen Sekunden seit dem 01.01.1970 repräsentiert.
Um einen Timestamp in einer Variablen zu speichern wird die die Funktion time() verwendet.
1 <?php
2
3 /* holt den aktuellen Timestamp
4 und speichert diesen in $timestamp */
5 $timestamp = time();
6
7 echo date("H:i:s:T", $timestamp);
8
9 /* gibt den mit time(); geholten Timestamp im
10 angegebenen Format aus ( z.B. 15:23:45:EST ) */
11 ?>
|
|