Perl Datum und Uhrzeit
In diesem Kapitel stellen wir vor, wie die Sprache Perl Datum und Uhrzeit handhabt.
Perl bietet die folgenden Funktionen zur Handhabung von Zeit:
- 1. Die Funktion time():Gibt die kumulierten Sekunden seit dem 1. Januar 1970 zurück
- 2. Die Funktion localtime():Ermittelt die lokale Zeitzonenzeit
- 3. Die Funktion gmtime():Ermittelt die Greenwich Mean Time
Aktuelles Datum und Uhrzeit
Als Nächstes werfen wir einen Blick auf dielocaltime()-Funktion, die die aktuelle Uhrzeit und das aktuelle Datum zurückgibt, wenn sie ohne Parameter aufgerufen wird.
Die folgenden 9 Symbole repräsentieren verschiedene Zeit- und Datumsparameter:
sec, # 秒, 0 到 61 min, # 分钟, 0 到 59 hour, # 小时, 0 到 24 mday, # 天, 1 到 31 mon, # 月, 0 到 11 year, # 年,从 1900 开始 wday, # 星期几,0-6,0表示周日 yday, # 一年中的第几天,0-364,365 isdst # 如果夏令时有效,则为真
Die Beispielvorführung ist wie folgt:
Beispiel
Die Ausgabe des obigen Beispiels ist:
12 六月 星期天
Wenn Sie localtime() direkt aufrufen, gibt es die Zeit in der aktuell im System konfigurierten Zeitzone zurück, wie im folgenden Beispiel gezeigt:
Beispiel
Die Ausgabe des obigen Beispiels ist:
时间日期为:Sun Jun 12 11:27:31 2016
Mittlere Greenwich-Zeit (GMT)
Die Funktiongmtime()ähnelt localtime(), gibt aber die mittlere Greenwich-Zeit zurück.
Beispiel
Die Ausgabe des obigen Beispiels ist:
本地时间日期为:Sun Jun 12 11:32:14 2016 GMT 时间日期为:Sun Jun 12 03:32:14 2016
Aus dem Beispiel können wir ersehen, dass die chinesische Zeit 8 Stunden vor der mittleren Greenwich-Zeit liegt.
Formatieren von Datum und Uhrzeit
Wir können die 9 Zeitelemente der Funktion localtime() verwenden, um die Zeit in einem gewünschten Format auszugeben. Verwenden Sie die Funktion printf() für die formatierte Ausgabe:
Beispiel
Die Ausgabe des obigen Beispiels ist:
格式化时间:HH:MM:SS 11:35:23
Epoch-Zeit
Wir können die Funktion time() verwenden, um die Epoch-Zeit zu erhalten, die die kumulierten Sekunden seit dem 1. Januar 1970 zurückgibt. Hier ist ein Beispiel:
Beispiel
Die Ausgabe des obigen Beispiels ist:
从1970年1月1日起累计的秒数为:1465702883
Wir können ein Zeitformat unserer Wahl ausgeben:
Beispiel
Die Ausgabe des obigen Beispiels ist:
当期时间和日期:2017-3-15 12:47:54 昨天时间和日期:2017-3-14 12:47:54
POSIX-Funktion strftime()
Die Funktion strftime() kann Zeit in das Format formatieren, das wir wollen.
Die folgende Tabelle listet einige Formatierungssymbole auf; das * gibt an, dass es von der Ortszeit abhängt:
| Symbol | Beschreibung | Beispiel |
|---|---|---|
%a |
Abgekürzter Wochentagsname (So..Sa) * | Thu |
%A |
Vollständiger Wochentagsname (Sonntag..Samstag) * | Thursday |
%b |
Abgekürzter Monatsname (Jan..Dez) * | Aug |
%B |
Vollständiger Monatsname (Januar..Dezember) * | August |
%c |
Datum und Uhrzeit * | Thu Aug 23 14:55:02 2001 |
%C |
Jahr geteilt durch 100 und abgerundet (00-99) |
20 |
%d |
Tag des Monats (01-31) |
23 |
%D |
Datum,MM/DD/YYentspricht%m/%d/%y |
08/23/01 |
%e |
Tag des Monats, einstellige Ziffern mit Leerzeichen aufgefüllt ( 1-31) |
23 |
%F | YYYY-MM-DDDie Abkürzung ist ähnlich wie%Y-%m-%d |
2001-08-23 |
%g |
Letzte zwei Ziffern des Jahres (00-99) |
01 |
%g |
Jahr | 2001 |
%h |
Abgekürzter Monatsname * (gleich wie%bOption) |
Aug |
%H | 24-Stunden-Format (00-23) |
14 |
%I |
12-Stunden-Format (01-12) |
02 |
%j |
Tag des Jahres (001-366) |
235 |
%m |
Monat (01-12) |
08 |
%M |
Minute (00-59) |
55 |
%n |
Zeilenumbruch ('\n') |
|
%p | Zeigt AM oder PM an | PM |
%r |
Zeit (hh:mm:ss AM oder PM), 12-Stunden * | 02:55:02 pm |
%R |
24-StundenHH:MMZeitformat, äquivalent zu%H:%M |
14:55 |
%S |
Sekunden (00-61) |
02 |
%t |
Horizontaler Tabulator ('\t') |
|
%T |
Zeit (24-Stunden-Format) (hh:mm:ss), entspricht%H:%M:%S |
14:55 |
%u |
ISO-8601-Wochentagsformat, Montag ist1 (1-7) |
4 |
%U |
Wochennummer des Jahres, Sonntag als erster Tag (00-53) |
33 |
%V |
ISO-8601-Wochennummer (00-53) |
34 |
%w |
Wochentag (0 steht für Sonntag) (0-6) |
4 |
%W |
Wochennummer des Jahres, Montag als erster Tag (00-53) |
34 |
%x |
Zeigt Datumsformat (mm/dd/yy) an * | 08/23/01 |
%X |
Zeigt Zeitformat an * | 14:55:02 |
%y |
Jahr, zwei Ziffern (00-99) |
01 |
%Y |
Jahr | 2001 |
%z |
ISO-8601-Zeitzonenversatz von UTC (1 Minute = 1, 1 Stunde = 100)
|
+100 |
%Z |
Name der aktuellen Zeitzone, z. B. "China Standard Time" *
|
CDT |
%% |
%Symbol |
% |
Beispiel
Die Ausgabe des obigen Beispiels ist:
时间日期 - 2016-06-12 12:15:13 时间日期 - 2016-06-12 04:15:13Andere Erweiterungen