国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Perl > 正文

Perl時(shí)間處理函數(shù)用法介紹

2020-06-04 20:33:58
字體:
供稿:網(wǎng)友

一. Perl時(shí)間的表示函數(shù)

1. 表示日期的方式多種多樣:
"18Jan1973";
"18/01/1973";
"01/18/1973";
"Jan181973";
"18-01-73";
"18-01-1973";
"01/73".
其中一些格式意思不清(如"01-06-1973",是表示6月1日呢,還是表示1月6日呢?)
如果不規(guī)定日期的表示形式,是很難處理的.

想理解"18Jan1973"和"6Sep1950"之間的區(qū)別,需要把它們轉(zhuǎn)換為數(shù)字表示.
Unix內(nèi)部運(yùn)用紀(jì)元秒表示時(shí)間。
日期和時(shí)間加起來表示:
自格林威志時(shí)間1970年1月1日午夜時(shí)分(紀(jì)元)到當(dāng)前時(shí)刻之間的秒數(shù)。
如, "18 Jan 1973:(假定為午夜時(shí)分)的紀(jì)元秒為96163200。

2. 在該系統(tǒng)中,午夜表示一天的開始時(shí)刻。

讓我們通過Perl中提供的gmtime函數(shù)生成一個(gè)日期。
給定一個(gè)用以表示自從紀(jì)元以來的秒數(shù)的整數(shù), 通過gmtime函數(shù)可以計(jì)算出代表相應(yīng)的日期和時(shí)刻,
例一:
調(diào)用gmtime()函數(shù),你會(huì)得到一系列值的列表,包括時(shí),分,秒,日期,月份,年份等.

#!/usr/bin/perluse Time::localtime;$t_num = 96163200;$tm = scalar(gmtime($t_num));print $tm,"/n";

輸出:
Thu Jan 18 00:00:00 1973

例二:以","為分隔符輸出時(shí)間
print join(",", gmtime(96163200));

0,0,0,18,0,73,4,17,0
語義:
前3個(gè)數(shù): 0,0,0, 分別表示秒, 分, 時(shí). 小時(shí)是從0-23,故下午是12時(shí)往后.
第4個(gè)數(shù): 18, 表示該月中的天數(shù)(本例中為18號(hào))。
第5個(gè)數(shù): 0 , 表示月份,從0開始(代表1月份)。
之所以從0開始,是因?yàn)樵路輰?duì)應(yīng)著月份數(shù)組的下標(biāo):

@months = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec);$month = @months[(gmtime($t_num))[4]];print "MONTH: ",$month,"/n";

第6個(gè)數(shù): 73, 年份, (本例中為73)的表示有點(diǎn)特殊。它并不是年份的最后兩位數(shù)字。
它表示從1900年開始的年份。
為什么要這樣表示呢?
這是因?yàn)镃語言就是這樣處理的。
Perl試圖使得其庫和系統(tǒng)調(diào)用盡量接近操作系統(tǒng)的處理方式。
所以,如果你想輸出4位數(shù)的年份,表示如下:
$year=(gmtime(96163200))[5]+1900;

如果你不了解這種處理方式,就會(huì)制造出Y2K疑問,你也許會(huì)這樣寫:
$year="19".(gmtime(96163200))[5]; #出錯(cuò)!2000年將變?yōu)?9100
第7個(gè)數(shù): 4 , 表示一星期中的第幾天(星期日為0).
第8個(gè)數(shù): 17, 一年中的第幾天(0表示一年中的第一天).
第9個(gè)數(shù): 0 , 能不能采用夏時(shí)制(0表示不采用,正數(shù)表示采用,負(fù)數(shù)表示不可知).

3. Perl中的time()函數(shù)返回以紀(jì)元秒形式表示的當(dāng)前日期和時(shí)間。

如果你打算把它轉(zhuǎn)換為字符串,就可運(yùn)用gmtime()和localtime()函數(shù):

$now=localtime(time());($sec,$min,$hour,$day,$mon,$year,$wday,$yday,$isdst)=localtime(time());            
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 高陵县| 新乡县| 响水县| 莱州市| 青川县| 铅山县| 友谊县| 卓尼县| 菏泽市| 新源县| 桃源县| 元朗区| 宁晋县| 汕尾市| 吴旗县| 永宁县| 凤翔县| 南漳县| 石屏县| 木里| 五华县| 孝义市| 万载县| 闻喜县| 台北县| 吕梁市| 福鼎市| 萨迦县| 长春市| 武威市| 阜阳市| 河南省| 湖州市| 仁寿县| 长顺县| 宜春市| 黑水县| 黄陵县| 永昌县| 杨浦区| 濉溪县|