Latest web development tutorials

Perl Data Ora

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:

  • 1 funzione time (): Ritorna dal 1 ° gennaio 1970, il numero cumulativo di secondi
  • 2, localtime function (): Prendi il fuso orario locale
  • 3, gmtime function (): Get GMT

data e l'ora corrente

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

Greenwich Mean Time (GMT)

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.


formato data e ora

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

New Time Era (Epoch Time)

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

la funzione POSIX strftime ()

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 (Sun..Sat) * Thu
%A Settimana nome completo (Sunday..Saturday) * Thursday
%b Mese sigla (Jan..Dec) * Aug
%B Il nome completo del mese (January..December) * 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