Il miglior tutorial Perl Data Ora Nel 2024, in questo tutorial puoi imparare data e l'ora corrente,Greenwich Mean Time (GMT),formato data e ora,New Time Era (Epoch Time),la funzione POSIX strftime (),
In questa sezione, si introduce il linguaggio Perl per la data e l'ora di elaborazione.
Perl è in funzione del tempo di elaborazione sono i seguenti:
Diamo la funzionelocaltime (), che restituisce la data e l'ora corrente a parametri un'occhiata.
I seguenti nove simboli che rappresentano data e ora diversi parametri:
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 # 如果夏令时有效,则为真
Esempi di presentazione come segue:
#!/usr/bin/perl @months = qw( 一月 二月 三月 四月 五月 六月 七月 八月 九月 十月 十一月 十二月 ); @days = qw(星期天 星期一 星期二 星期三 星期四 星期五 星期六); ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(); print "$mday $months[$mon] $days[$wday]\n";
Esempi di attuazione dell'uscita sopra è:
12 六月 星期天
Se la chiamata diretta di localtime (), che restituisce le impostazioni correnti del fuso orario del sistema, gli esempi sono i seguenti:
#!/usr/bin/perl $datestring = localtime(); print "时间日期为:$datestring\n";
Esempi di attuazione dell'uscita sopra è:
时间日期为:Sun Jun 12 11:27:31 2016
gmtime () e localtime () è simile, ma restituisce lo standard di Greenwich.
#!/usr/bin/perl $local_datestring = localtime(); print "本地时间日期为:$local_datestring\n"; $gmt_datestring = gmtime(); print "GMT 时间日期为:$gmt_datestring\n";
Esempi di attuazione dell'uscita sopra è:
本地时间日期为:Sun Jun 12 11:32:14 2016 GMT 时间日期为:Sun Jun 12 03:32:14 2016
Possiamo vedere dall'esempio, la Cina e la differenza di tempo di 8 ore GMT.
Possiamo usare localtime () elemento funzionale 9 tempo per il formato di uscita del tempo richiesto per sviluppare. output formattato utilizzando la funzione printf ():
#!/usr/bin/perl ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(); printf("格式化时间:HH:MM:SS\n"); printf("%02d:%02d:%02d", $hour, $min, $sec);
Esempi di attuazione dell'uscita sopra è:
格式化时间:HH:MM:SS 11:35:23
Possiamo usare la funzione time () per ottenere una nuova era di tempo, la funzione restituisce dal 1 gennaio 1970 il numero cumulativo di secondi. Esempi sono i seguenti:
#!/usr/bin/perl $epoc = time(); print "从1970年1月1日起累计的秒数为:$epoc\n";
Esempi di attuazione dell'uscita sopra è:
从1970年1月1日起累计的秒数为:1465702883
Siamo in grado di produrre un formato ora vogliamo:
#!/usr/bin/perl ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(); print "当期时间和日期:"; printf("%d-%d-%d %d:%d:%d",$year+1990,$mon+1,$mday,$hour,$min,$sec); print "\n"; $epoc = time(); $epoc = $epoc - 24 * 60 * 60; # 一天前的时间秒数 ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($epoc); print "昨天时间和日期:"; printf("%d-%d-%d %d:%d:%d",$year+1990,$mon+1,$mday,$hour,$min,$sec); print "\n";
Esempi di attuazione dell'uscita sopra è:
当期时间和日期:2106-6-12 11:49:28 昨天时间和日期:2106-6-11 11:49:28
strftime function () può essere formattato in formato volta che vogliamo.
La seguente tabella elenca alcuni dei simboli di formattazione, asterisco indica che si desidera fare affidamento su ora locale:
simbolo | descrizione | Esempi |
---|---|---|
%a | Settimana sigla (SunitSat) * | Thu |
%A | Settimana nome completo (SundayitSaturday) * | Thursday |
%b | Mese sigla (JanitDec) * | Aug |
%B | Il nome completo del mese (JanuaryitDecember) * | August |
%c | Data e ora * | Thu Aug 23 14:55:02 2001 |
%C | Oltre all'anno 100, e l'arrotondamento ( 00-99 ) | 20 |
%d | Giorno del mese ( 01-31 ) | 23 |
%D | Data, MM/DD/YY pari al %m/%d/%y | 08/23/01 |
%e | I primi giorni del mese, imbottiti con spazi cifre ( 1-31 ) | 23 |
%F | YYYY-MM-DD stenografia simile a %Y-%m-%d | 2001-08-23 |
%g | Le ultime due cifre dell'anno ( 00-99 ) | 01 |
%g | anno | 2001 |
%h | * Mesi breve (e %b opzione) | Aug |
%H | 24 ore ( 00-23 ) | 14 |
%I | 12 ore ( 01-12 ) | 02 |
%j | I primi giorni dell'anno ( 001-366 ) | 235 |
%m | Mese ( 01-12 ) | 08 |
%M | Min ( 00-59 ) | 55 |
%n | Newline ( '\n' ) | |
%p | Visualizza AM o PM | PM |
%r | Tempo (hh: mm: ss AM o PM), 12 ore * | 02:55:02 pm |
%R | 24 ore HH:MM formato dell'ora, pari al %H:%M | 14:55 |
%S | Secondi ( 00-61 ) | 02 |
%t | tabulazione orizzontale ( '\t' ) | |
%T | Time (24 ore) (hh: mm: ss) , pari al %H:%M:%S | 14:55 |
%u | ISO 8601 della settimana, Lunedi è 1 ( 1-7 ) | 4 |
%U | Le prime settimane dell'anno, Domenica è il primo giorno ( 00-53 ) | 33 |
%V | ISO 8601 numero della settimana ( 00-53 ) | 34 |
%w | I primi giorni (0 per Domenica) una settimana ( 0-6 ) | 4 |
%W | Le prime settimane dell'anno, Lunedi è il primo giorno ( 00-53 ) | 34 |
%x | Format per visualizzare la data (gg / mm / aa) * | 08/23/01 |
%X | Formato schermo Ora * | 14:55:02 |
%y | , I due cifre ( 00-99 ) | 01 |
%Y | anno | 2001 |
%z | ISO 8601 offset da UTC zona (1 minuto = 1, 1 ora = 100) | +100 |
%Z | Nome del fuso orario corrente, come ad esempio "la Cina standard Time" * | CDT |
%% | % Simbolo | % |
Esempi sono i seguenti:
#!/usr/bin/perl use POSIX qw(strftime); $datestring = strftime "%Y-%m-%d %H:%M:%S", localtime; printf("时间日期 - $datestring\n"); # GMT 格式化时间日期 $datestring = strftime "%Y-%m-%d %H:%M:%S", gmtime; printf("时间日期 - $datestring\n");
Esempi di attuazione dell'uscita sopra è:
时间日期 - 2016-06-12 12:15:13 时间日期 - 2016-06-12 04:15:13