Latest web development tutorials

بيرل التاريخ الوقت

هذا القسم، ونحن نقدم للغة بيرل للتاريخ ووقت المعالجة.

بيرل هي وظيفة من وقت المعالجة هي التالية:

  • وظيفة 1، والوقت (): عودة من 1 يناير 1970 العدد التراكمي للثانية
  • 2، LOCALTIME وظيفة (): احصل على المنطقة الزمنية المحلية
  • 3، gmtime وظيفة (): احصل على GMT

الوقت والتاريخ الحالي

دعونا ننظر ظيفةLOCALTIME ()، والتي ترجع التاريخ والوقت الحالي على أية معلمات.

وفيما يلي تسعة الرموز التي تمثل مختلف المعلمات التاريخ والوقت:

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    # 如果夏令时有效,则为真

أمثلة على العرض كما يلي:

#!/usr/bin/perl
 
@months = qw( 一月 二月 三月 四月 五月 六月 七月 八月 九月 十月 十一月 十二月 );
@days = qw(星期天 星期一 星期二 星期三 星期四 星期五 星期六);

($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime();
print "$mday $months[$mon] $days[$wday]\n";

أمثلة على تنفيذ الانتاج في الأعلى هو:

12 六月 星期天

إذا كانت المكالمة مباشرة إلى LOCALTIME ()، والتي ترجع إعدادات المنطقة الزمنية النظام الحالي، والأمثلة على ذلك كما يلي:

#!/usr/bin/perl
 
$datestring = localtime();
print "时间日期为:$datestring\n";

أمثلة على تنفيذ الانتاج في الأعلى هو:

时间日期为:Sun Jun 12 11:27:31 2016

توقيت جرينتش (GMT)

وظيفةgmtime () وLOCALTIME () هو ما شابه ذلك، ولكنه يعود معيار توقيت غرينتش.

#!/usr/bin/perl

$local_datestring = localtime();
print "本地时间日期为:$local_datestring\n";

$gmt_datestring = gmtime();
print "GMT 时间日期为:$gmt_datestring\n";

أمثلة على تنفيذ الانتاج في الأعلى هو:

本地时间日期为:Sun Jun 12 11:32:14 2016
GMT 时间日期为:Sun Jun 12 03:32:14 2016

يمكننا أن نرى من سبيل المثال، الصين والفرق بتوقيت جرينتش من 8 ساعات.


تنسيق التاريخ والوقت

يمكننا استخدام LOCALTIME () 9 الوقت عنصر وظيفة لتنسيق الإخراج من الوقت اللازم لتطوير. الناتج تهيئتها باستخدام وظيفة 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);

أمثلة على تنفيذ الانتاج في الأعلى هو:

格式化时间:HH:MM:SS
11:35:23

نيو وقت العصر (عصر الوقت)

يمكننا استخدام مرة وظيفة () للحصول على حقبة جديدة من الزمن، ترجع الدالة من 1 يناير 1970 عدد التراكمي للثواني. ومن الأمثلة على ذلك ما يلي:

#!/usr/bin/perl
 
$epoc = time();

print "从1970年1月1日起累计的秒数为:$epoc\n";

أمثلة على تنفيذ الانتاج في الأعلى هو:

从1970年1月1日起累计的秒数为:1465702883

يمكننا إخراج تنسيق الوقت ونحن نريد:

#!/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";

أمثلة على تنفيذ الانتاج في الأعلى هو:

当期时间和日期:2106-6-12 11:49:28
昨天时间和日期:2106-6-11 11:49:28

POSIX وظيفة STRFTIME ()

وظيفة STRFTIME () يمكن تنسيق بتنسيق الوقت الذي تريد.

يسرد الجدول التالي بعض رموز التنسيق، النجمة تشير تريد أن تعتمد على الوقت المحلي:

رمز وصف أمثلة
%a الأسبوع اختصار (Sun..Sat) * Thu
%A الأسبوع الاسم الكامل (Sunday..Saturday) * Thursday
%b اختصار الشهر (Jan..Dec) * Aug
%B الاسم الكامل من الشهر (January..December) * August
%c التاريخ والوقت * Thu Aug 23 14:55:02 2001
%C بالإضافة إلى سنة 100، والتقريب ( 00-99 ) 20
%d يوم من الشهر ( 01-31 ) 23
%D الآن، MM/DD/YY ما يعادل %m/%d/%y 08/23/01
%e الأيام القليلة الأولى من الشهر، مبطن مع مسافات أرقام ( 1-31 ) 23
%F YYYY-MM-DD الاختزال مماثلة ل %Y-%m-%d 2001-08-23
%g آخر رقمين من السنة ( 00-99 ) 01
%g عام 2001
%h * أشهر قصيرة (و %b خيار) Aug
%H على مدار الساعة على مدار 24 ساعة ( 00-23 ) 14
%I 12 ساعة ( 01-12 ) 02
%j في الأيام القليلة الأولى من السنة ( 001-366 ) 235
%m الشهر ( 01-12 ) 08
%M دقيقة ( 00-59 ) 55
%n السطر الجديد ( '\n' )
%p مشاهدة صباحا أو مساء PM
%r الوقت (HH: MM: SS صباحا أو مساء)، 12 ساعة * 02:55:02 pm
%R 24 ساعة HH:MM تنسيق الوقت، أي ما يعادل %H:%M 14:55
%S ثانية ( 00-61 ) 02
%t علامة التبويب الأفقي ( '\t' )
%T الوقت (ساعة على مدار 24 ساعة) (HH: MM: SS) ، تساوي %H:%M:%S 14:55
%u ISO 8601 من أيام الأسبوع، ويوم الاثنين هو 1 ( 1-7 ) 4
%U خلال الأسابيع القليلة الأولى من هذا العام، يوم الأحد هو أول أيام ( 00-53 ) 33
%V ISO 8601 رقم الأسبوع ( 00-53 ) 34
%w الأيام القليلة الأولى (0 الأحد) في الأسبوع ( 0-6 ) 4
%W خلال الأسابيع القليلة الأولى من هذا العام، الاثنين هو اليوم الأول ( 00-53 ) 34
%x شكل لعرض التاريخ (شهر / يوم / سنة) * 08/23/01
%X عرض تنسيق الوقت * 14:55:02
%y إن من رقمين ( 00-99 ) 01
%Y عام 2001
%z ISO 8601 إزاحة المنطقة الزمنية من UTC (1 دقيقة = 1، 1 ساعة = 100)

+100
%Z اسم المنطقة الزمنية الحالية، مثل "الصين وقت قياسي" *

CDT
%% % الرمز %

ومن الأمثلة على ذلك ما يلي:

#!/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");

أمثلة على تنفيذ الانتاج في الأعلى هو:

时间日期 - 2016-06-12 12:15:13
时间日期 - 2016-06-12 04:15:13