在Web服务器上运转雷同的剧本时,您能够会发明桌面体系上的当地时候已封闭当地时候。服务器能够位于差别的时区,或许设置不准确。每台机械能够对当地时候有一个完整差别的主意,它能够须要在剧本内或服务器自身上举行一些调解,以使其与您希冀的相匹配。
localtime函数返回一个包括当前时候数据的列表,个中一些数据须要举行调解。运转下面的顺序,您将看到列表中的每一个元素都打印在行上并用空格分开。
#!/usr/local/bin/perl @timeData = localtime(time); print join(' ', @timeData);
你应当看到相似的东西,虽然数字能够会有很大差别。
20 36 8 27 11 105 2 360 0
当前时候的这些元素按顺序排列:
-过了一分钟
-过了几分钟
-半夜时分
-每个月的某一天
-从年终最先的几个月
-自1900年以来的年纪
-自本周最先以来的天数(礼拜日)
-自年终以来的天数
-夏时制是不是有用
使Perl当地时候可读
localtime返回的数组中的一些元素读起来有点别扭。谁会用1900年今后的年份来斟酌这一年呢?让我们看一个例子,让我们的日期和时候更清晰。
当你运转这个顺序时,你会看到一个更轻易浏览的日期和时候,像如许:
9:14:42, Wed Dec 28, 2018
那末我们做了什么来建立这个可读性更好的版本呢?起首,我们预备两个数组,个中包括月份和礼拜的称号。
@months = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec); @weekDays = qw(Sun Mon Tue Wed Thu Fri Sat Sun);
因为localtime函数以0-11和0-6之间的值返回这些元素,因而它们是数组的最好候选元素。localtime返回的值能够作为数字地点来访问数组中的准确元素。
$months[$month] $weekDays[$dayOfWeek]
下一步是从localtime函数猎取一切的值。在本例中,我们运用Perl快捷体式格局自动将localtime数组中的每一个元素放到它自己的变量中。我们挑选称号是为了便于记着哪一个元素是哪一个元素。
($second, $minute, $hour, $dayOfMonth, $month, $yearOffset, $dayOfWeek, $dayOfYear, $daylightSavings) = localtime();
我们还须要调解这一年的代价。记着,localtime返回自1900年以来的年纪,因而为了找到当前的年份,我们须要在给定的值上加上1900。
$year = 1900 + $yearOffset;
如何用Perl示意当前通用时候
假定您愿望防止一切能够的时区殽杂,并控制自己的时差。猎取localtime中的当前时候将一直返回一个基于机械的时区设置的值——美国的服务器将返回一个时候,而澳大利亚的服务器将返回一个因为时区差别而险些全天差别的时候。
Perl另有第二个轻易的时候指导函数,它的工作体式格局与localtime完整雷同,然则它返回的不是机械地点时区的牢固时候,而是谐和世界时(UTC,也称为格林尼治标准时候或GMT)。很简单,这个函数被称为gmtime
#!/usr/local/bin/perl @timeData = gmtime(time); print join(' ', @timeData);
除了在每台机械上和GMT中返回的时候雷同以外,gmtime和localtime函数之间没有区分。一切数据和转换都以雷同的体式格局完成。
#!/usr/local/bin/perl @months = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec); @weekDays = qw(Sun Mon Tue Wed Thu Fri Sat Sun); ($second, $minute, $hour, $dayOfMonth, $month, $yearOffset, $dayOfWeek, $dayOfYear, $daylightSavings) = gmtime(); $year = 1900 + $yearOffset; $theGMTime = "$hour:$minute:$second, $weekDays[$dayOfWeek] $months[$month] $dayOfMonth, $year"; print $theGMTime;
1.localtime将返回运转剧本的机械上的当前当地时候。
2.gmtime将返回通用格林尼治标准时候,或GMT(或UTC)。
3.返回值能够不是您所希冀的,因而请确保在必要时举行转换。
相干引荐:《Perl教程》http://www.ki4.cn/course/list/39.html
本篇文章就是关于如何用Perl示意当前时候的要领引见,愿望对须要的朋侪有所协助!
以上就是如何用Perl示意当前时候的细致内容,更多请关注ki4网别的相干文章!