PHP Einsteigerkurs - Grundlagen der PHP/MySQL Programmierung in 5 Tagen verstehen
00:00:00 GMT zu laufen.
microtime()
Noch genauer, aber für die date() Funktion nicht verwendbar, wäre die
Funktion microtime(). Als Parameter kann man optional angeben, ob man den
Rückgabewert als Kommazahl erhalten möchte. Diese liefert den aktuellen
Zeitpunkt in der UNIX Zeit in Mikrosekunden genau zurück. Dies ist zum Beispiel
dafür nützlich, um zu messen, wie lange ein Script gelaufen ist, um so Stellen
in Programmen zu finden, die noch Optimierungspotential hätten:
$start = microtime(true);
/*
Zwei Dummyvariablen, damit wir für
das Script etwas Rechenaufwand erzeugen können:
*/
$dummyVariable1 = 1;
$dummyVariable2 = 3;
$x = 0;
while ($x < 1000000) {
$x++;
$dummyVariable1
*= $dummyVariable2;
$dummyVariable1
= $dummyVariable1 / $dummyVariable2;
}
$end = microtime(true);
echo "Laufzeit: " . ($end -
$start) . "ms";
?>
Das hat zum Beispiel die Ausgabe:
Laufzeit: 0.1886830329895ms
Zeitpunkt an die date() Funktion übergeben mit mktime()
Möchte man einen bestimmten Zeitpunkt ausgeben, so muss man dies zum
Beispiel mit der Funktion mktime (Stunde, Minute, Sekunde, Monat, Tag,
Jahr) bewerkstelligen:
echo date("Y-m-d",
mktime(0, 0, 0, 5, 17, 2012));
?>
hätte wieder dieselbe Ausgabe.
Um dem Kapitel Textfunktionen aus diesem Buch eine Funktion vorwegzunehmen,
verrate ich Ihnen gleich die Funktion strtotime("Zeitpunkt im
Textformat"). Mit dieser kann man einen in menschlich lesbarer Form in
englischer Sprache ausgeschriebenen Zeitpunkt in ein für die die date()
Funktion brauchbares time Format umwandeln:
echo date("Y-m-d",
strtotime("May 17th, 2012"));
?>
Hier einige Beispiele für solche Umwandlungen:
strtotime("now")
strtotime("2012-05-17")
Und es gibt folgende vom jetzigen Zeitpunkt aus berechnete Angaben:
strtotime("next Friday")
strtotime("last Monday")
strtotime("+1 day")
strtotime("+2 days")
strtotime("+1 week 2 days 3 hours 4
seconds")
Es sind folgende Formatierungen möglich
(Quelle: php.net):
Tag
d
Tag des Monats, 2-stellig mit führender Null
01 bis 31
D
Wochentag, gekürzt auf drei Buchstaben
Mon bis Sun
j
Tag des Monats ohne führende Nullen
1 bis 31
l (kleines 'L')
Ausgeschriebener Wochentag
Sunday bis Saturday
N
Numerische Repräsentation des Wochentages gemäß ISO-8601 (in PHP 5.1.0
hinzugefügt)
1 (für Montag) bis 7 (für Sonntag)
S
Anhang der englischen Aufzählung für einen Monatstag, zwei Zeichen
st, nd, rd oder th. Zur Verwendung mit j empfohlen.
w
Numerischer Tag einer Woche
0 (für Sonntag) bis 6 (für Samstag)
z
Der Tag des Jahres (von 0 beginnend)
0 bis365
Woche
W
ISO-8601 Wochennummer des Jahres, die Woche beginnt am Montag (hinzugefügt
in PHP 4.1.0)
Beispiel: 42 (die 42. Woche im Jahr)
Monat
F
Monat als ganzes Wort, wie January oder March
January bis December
m
Monat als Zahl, mit führenden Nullen
01 bis 12
M
Monatsname mit drei Buchstaben
Jan bis Dec
n
Monatszahl, ohne führende Nullen
1 bis 12
t
Anzahl der Tage des angegebenen Monats
28 bis 31
Jahr
L
Schaltjahr oder nicht
1 für ein Schaltjahr, andernfalls 0
o
Jahreszahl gemäß ISO-8601. Dies ergibt den gleichen Wert wie Y, außer wenn
die ISO-Kalenderwoche (W) zum vorhergehenden oder nächsten Jahr gehört, wobei
dann jenes Jahr verwendet wird (in PHP 5.1.0 hinzugefügt).
Beispiele: 1999 oder 2003
Y
Vierstellige Jahreszahl
Beispiele: 1999 oder 2003
y
Jahreszahl, zweistellig
Beispiele: 99 oder 03
Uhrzeit
a
Kleingeschrieben: Ante meridiem (Vormittag) und Post meridiem (Nachmittag)
am oder pm
A
Großgeschrieben: Ante meridiem (Vormittag) und Post meridiem (Nachmittag)
AM oder PM
B
Swatch-Internet-Zeit
000 bis 999
g
Stunde im 12-Stunden-Format, ohne führende Nullen
1 bis 12
G
Stunde im 24-Stunden-Format, ohne führende Nullen
0 bis 23
h
Stunde im 12-Stunden-Format, mit führenden Nullen
01 bis 12
H
Stunde im 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
u
Mikrosekunden (hinzugefügt in PHP 5.2.2)
Beispiel:
Weitere Kostenlose Bücher