精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

暢談Perl時間處理函數(shù)用法

開發(fā) 架構(gòu)
Perl時間處理函數(shù)的概念你是否熟悉,這里向大家簡單介紹一下,Perl是由LarryWall設(shè)計(jì)的,并由他不斷更新和維護(hù)的編程語言。

本文和大家重點(diǎn)討論一下Perl時間處理函數(shù)的概念,Perl能在絕大多數(shù)操作系統(tǒng)運(yùn)行,可以方便地向不同操作系統(tǒng)遷移,并且Perl借取了C、sed、awk、shellscripting以及很多其他程序語言的特性。

Perl時間處理函數(shù)

表示日期的方式多種多樣:

“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ì)元秒表示時間。日期和時間加起來表示之自格林威志時間1970年1月1日午夜時分(紀(jì)元)到當(dāng)前時刻之間的秒數(shù)。”18Jan1973″(假定為午夜時分)的紀(jì)元秒為96163200。在該系統(tǒng)中,午夜表示一天的開始時刻。
讓我們生成一個日期通過Perl中提供的gmtime函數(shù),你可以自己來驗(yàn)證這點(diǎn)。給定一個用以表示自從紀(jì)元以來的秒數(shù)的整數(shù),通過gmtime函數(shù)可以計(jì)算出代表相應(yīng)的日期和時刻,例如:
Perl-le‘printscalargmtime96163200′
ThuJan1800:00:001973
調(diào)用gmtime()函數(shù),你會得到一系列值的列表,包括時,分,秒,日期,月份,年份等等。
Perl-le‘printjoin(”,”,gmtime96163200)’
0,0,0,18,0,73,4,17,0
前面3個0分別表示秒,分,時。小時是從0-23,故下午是12時往后。第4個數(shù)表示該月中的天數(shù)(本例中為18號)。第5個數(shù)表示月份,從0開始(代表1月份)。之所以從0開始,是因?yàn)樵路輰?yīng)著月份數(shù)組的下標(biāo):
@months=qw(JanFebMarAprMayJunJulAugSepOctNovDec);$month=(gmtime96163200)[4];#“Jan”
年份(本例中為73)的表示有點(diǎn)特殊。它并不是年份的***兩位數(shù)字。它表示從1900年開始的年份。為什么要這樣表示呢?這是因?yàn)镃語言就是這樣處理的。Perl試圖使得其庫和系統(tǒng)調(diào)用盡量接近操作系統(tǒng)的處理方式。

所以,如果你想輸出4位數(shù)的年份,表示如下:
$year=(gmtime96163200)[5]+1900;
如果你不了解這種處理方式,就會制造出Y2K疑問,你也許會這樣寫:
$year=“19″.(gmtime96163200)[5];
#出錯!2000年將變?yōu)?9100
對于gmtime()函數(shù)的返回值還沒有介紹完,還有4,17,和0這3個數(shù)。它們分別表示一星期中的第幾天(星期日為0),一年中的第幾天(0表示一年中的***天),以及能不能采用夏時制(表示不采用,正數(shù)表示采用,負(fù)數(shù)表示不可知)。

Perl中的time()函數(shù)返回以紀(jì)元秒形式表示的當(dāng)前日期和時間。如果你打算把它轉(zhuǎn)換為字符串,就可運(yùn)用gmtime()和localtime()函數(shù):$now=localtime(time());
($sec,$min,$hour,$day,$mon,$year,$wday,$yday,$isdst)=localtime(time());
如果調(diào)用localtime()或gmtime()時不帶參數(shù),它將自己調(diào)用time()
$now=localtime();
($sec,$min,$hour,$day,$mon,$year,$wday,$yday,$isdst)=localtime();

Perl時間處理函數(shù)中多見的日期和時間操作

如果你打算計(jì)算兩個時刻之間的時間段,只需將它們轉(zhuǎn)換為相應(yīng)的紀(jì)元秒,然后兩數(shù)相減即可:
$difference_in_seconds=$later_datetime-$earlier_datetime;
要把秒轉(zhuǎn)換為分,時,或天數(shù),只須要分別將它們除以60,3600和86400即可:
$difference_in_minutes=$difference_in_seconds/60;
$difference_in_hours=$difference_in_seconds/3600;
$difference_in_day=$difference_in_seconds/86400;

反過來做,你也可以回答如下疑問:”4天后是幾號?”:
$then=time()+86400*4;
printscalarlocaltime$then;
它給出的答案精確到秒。例如,如果4天后的紀(jì)元秒值為932836935,你可以輸出日期的字符串如下;
SatJul2411:23:171999
如果你打算輸出那個日期的午夜時分(如”SatJul2400:00:001999″)運(yùn)用如下模塊:$then=$then-$then%86400;#去掉那個日期的尾巴
類似地,你可以用四舍五入法,輸出最靠近午夜時分的日期:
$then+=43200;#addonhalfaday
$then=$then-$then%86400;#truncatetotheday

如果你的時區(qū)距離GMT為相差偶數(shù)個小時,這就管用了。并不是所有的時區(qū)都是很容易處理的。你所真實(shí)須要的是在你自己的時區(qū)內(nèi)計(jì)算紀(jì)元秒,而不是在GMT中計(jì)算。
Perl中的名為Time::Local的模塊,可以提供兩個函數(shù)timelocal()和timegm()。其返回值同localtime()和gmtime()一樣。
useTime::Local;
$then=time()+4*86400;
$then=timegmlocaltime$then;
#localepochseconds$then-=$then%86400;
#truncatetotheday
$then=timelocalgmtime$then;
#backtogmtepochseconds
printscalarlocaltime$then,“\n”。#p#

Perl時間處理函數(shù)中日常生活所用的日期和時間的表示

你已經(jīng)級掌握了時,分,年等值的意思,也了解了紀(jì)元秒的意思。而日常生活中的日期和時間是用字符串來表示的,你怎樣才能把日常所用的日期和時間串格式轉(zhuǎn)換成紀(jì)元秒呢?
要領(lǐng)之一是寫出語法分析小程序,該要領(lǐng)靈活而高速:
useTime::Local;
@months{qw(JanFebMarAprMayJun
JulAugSepOctNovDec)}=(0..11);
$_=“19Dec199715:30:02″;
/(\d\d)\s+(\w+)\s+(\d+)\s+(\d+):(\d+):(\d+)/
ordie“Notadate”;
$mday=$1;
$mon=exists($months{$2})?$months{$2}:die“Badmonth”;
$year=$3-1900;
($h,$m,$s)=($4,$5,$6);
$epoch_seconds=timelocal($s,$m,$h,$mday,$mon,$year);
一個更通用些的要領(lǐng),是從CPAN安裝Date::Manip模塊。

useDate::Manip;
$epoch_seconds=UnixDate(”19Dec199715:30:02″,”s”);
留心,由于Date::Manip是個大模塊,運(yùn)用該模塊時,將會添加你的程序的啟動時間。其中一個原由是Date::Manip將對多種不同的格式執(zhí)行識別,如:
“today”
“now”
“firstsundayinapril2000″
“3:15,today”
“3:15pm,firstsundayinapril2000″
“2000/01/1809:15″DateManipulation
2036,2037,2038,…,1901?!

大多數(shù)C程序把紀(jì)元秒存為有符號整數(shù),可表示正的和負(fù)的日期,但計(jì)算機(jī)存儲器所表示的整數(shù)大小是有限的,用有限的位數(shù)來表示秒。這就是說,我們在計(jì)算紀(jì)元秒時,所表示的日期是有限定的。
確切的限度取決于你的機(jī)器所能表示的整數(shù)的位數(shù)。Perl最多以32位的長度存儲整數(shù)。粗略地講,有一位用來表示正負(fù)號,其余31位來表示數(shù)。如果8位,你可以存儲的***數(shù)是255,即2的8次方減1。故Perl中所存儲的32位符號數(shù)中的***數(shù)為:
print2**31-1,“\n”;
2147483647
這個數(shù)字對應(yīng)了哪個日期呢?
printscalar(gmtime2**31-1),“\n”;
TueJan1903:14:072038
在那個時刻的1秒之后會發(fā)生什么呢?
printscalar(gmtime2**31),“\n”;
FriDec1320:45:521901
對于32位有符號整數(shù)來說,2**31太大了。它”翻卷過去了”,其符號位被置為負(fù)號,因而成為了所能表示的***負(fù)數(shù)。這對應(yīng)于1970年開始時刻之前的秒的***值。
其結(jié)果說明了什么呢?你不能存儲gmtime(2**31)之前或gmtime(2**31-1)之后的以紀(jì)元秒表示的日期。
你可千萬不要想不開,這可不是什么大疑問。如果你要用到32位有符號整數(shù)表示的紀(jì)元秒以外的時間,你只須要改動你的表示方式,你可從CPAN中找到不少日期模塊,其中的Date::Calc和Date::Manip很可能是功能***的兩個模塊。
這兩個模塊運(yùn)用自己的日期表示方式,以防止Y1901-Y2038的限定。Date::Manip運(yùn)用羅馬歷法,從公元0000到公元9999。Date::Calc也運(yùn)用羅馬歷法,可表示的年份從1到32767。

總結(jié)

Perl時間處理函數(shù)中對于在1902-2037范圍內(nèi)的日期和時期表示,把它們轉(zhuǎn)換為紀(jì)元秒,要存取這些數(shù),你只需運(yùn)用整數(shù)算術(shù)運(yùn)算,gmtime()和localtime()函數(shù),以及標(biāo)準(zhǔn)的Time::Local模塊。如果要對該范圍以外的日期執(zhí)行計(jì)算或者要分析某特殊的日期格式,你可以運(yùn)用CPAN中的Date::Manip和Date::Calc模塊。
 

【編輯推薦】

  1. 用Perl POE實(shí)現(xiàn)端口重定向
  2. 淺談配置Eclipse支持Perl腳本開發(fā)
  3. 用Perl和Google Earth創(chuàng)建可用性地圖
  4. 在 Perl/Tk 中使用高級窗口小部件
  5. 讓Perl成為你的嵌入式開發(fā)工具

 

 

責(zé)任編輯:佚名 來源: csdn.net
相關(guān)推薦

2010-07-14 14:18:51

Perl操作符

2010-07-19 10:01:57

Perl函數(shù)

2010-07-19 15:07:46

Perl字符串處理函數(shù)

2010-07-23 15:59:33

Perl encode

2010-07-19 15:01:26

Perl數(shù)學(xué)函數(shù)

2010-07-19 14:13:41

Perl函數(shù)

2010-07-23 13:53:33

Perl grep函數(shù)

2010-07-16 16:56:01

Perl構(gòu)造函數(shù)

2010-07-19 14:20:57

Perl函數(shù)

2010-07-19 09:45:09

Perl數(shù)組

2010-07-21 09:57:46

Perl文件

2010-07-21 10:10:50

Perl split函

2010-07-19 14:37:01

Perl進(jìn)程啟動函數(shù)

2010-07-19 15:37:48

Perl日期時間

2010-07-26 10:09:01

Perl split函

2010-07-16 17:04:38

Perl方法

2010-07-21 10:32:05

Perl函數(shù)返回值

2010-07-19 15:25:39

Perl標(biāo)量轉(zhuǎn)換函數(shù)

2010-07-23 16:16:43

Perl進(jìn)程處理函數(shù)

2010-07-21 10:05:13

Perl文本處理模塊
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

国产一级做a爰片在线看免费| 黄色aaaaaa| 牛牛澡牛牛爽一区二区| 日韩国产欧美在线播放| 色婷婷综合成人| 欧美图片自拍偷拍| 香蕉成人影院| 亚洲一区二区视频在线| 欧美亚洲另类在线一区二区三区| 一级特黄录像免费看| 欧美日韩国产色综合一二三四| 亚洲黄色www| 日韩高清第一页| 亚洲天堂免费电影| 亚洲精品免费在线| 日韩国产精品一区二区| 成人久久久精品国产乱码一区二区| 老司机一区二区三区| 免费av在线一区| 微拍福利一区二区| 欧美大胆a级| 欧美一区二区三区系列电影| 免费裸体美女网站| 国产福利电影在线播放| 亚洲视频在线一区观看| 欧美日韩一区在线观看视频| 亚洲国产精品久久久久爰性色| 天堂成人国产精品一区| 久久久久国色av免费观看性色| 欧美午夜激情影院| 五月国产精品| 亚洲国产日韩精品在线| 亚洲AV无码久久精品国产一区| 日韩av电影资源网| 色婷婷久久久久swag精品| 亚洲精品蜜桃久久久久久| 日本激情视频在线观看| 中文字幕乱码一区二区免费| 欧美一区二区三区成人久久片| 天堂在线中文网| 成人免费视频一区二区| 97人人澡人人爽| 精品黑人一区二区三区在线观看| 男人操女人的视频在线观看欧美 | 污视频网站免费在线观看| 国产欧美视频一区二区| 成人做爽爽免费视频| 波多野结衣在线电影| 视频一区二区三区入口| 日韩美女av在线免费观看| 免费日韩一级片| 亚洲黄色精品| 538国产精品一区二区在线| 久久国产精品免费看| 国产日韩一区二区三区在线| 51午夜精品视频| 91丝袜一区二区三区| 免费中文字幕日韩欧美| 欧美一性一乱一交一视频| 亚洲欧美偷拍一区| 日本不卡不码高清免费观看 | 日韩在线精品强乱中文字幕| 欧美一级爆毛片| 在线播放第一页| 麻豆精品av| 亚洲天堂av在线免费观看| 精品日韩在线视频| 婷婷成人基地| 欧美激情欧美激情| 色婷婷av国产精品| 日韩国产精品久久| 91色视频在线导航| 欧美一区二区黄片| 国产午夜精品久久久久久免费视| 亚洲成色www久久网站| 超碰电影在线播放| 偷拍与自拍一区| 欧美精品第三页| 色999久久久精品人人澡69| 日韩午夜小视频| 国产美女视频免费观看下载软件| 九九综合在线| 操人视频在线观看欧美| 日本中文字幕免费| 蜜桃免费网站一区二区三区| 波多野结衣久草一区| 深夜福利视频在线观看| 国产精品久久久久一区二区三区| 国产专区在线视频| 欧亚一区二区| 欧美成人乱码一区二区三区| 久久久久久亚洲中文字幕无码| 偷拍欧美精品| 26uuu国产精品视频| 国产一区二区麻豆| 99久久99久久精品国产片果冻 | 成人乱色短篇合集| 日日夜夜精品免费| 成人免费在线视频| 波多野结衣家庭教师视频| 精品久久国产一区| 一区二区三区回区在观看免费视频| 26uuu成人网| 视频一区二区三区在线| 国产主播一区二区三区四区| 幼a在线观看| 日韩欧美在线视频观看| 免费观看黄网站| 青青草原综合久久大伊人精品| 久久久久久九九九| 97人妻精品一区二区三区视频| 91一区二区三区在线观看| 最新av在线免费观看| 日韩精品第一| 亚洲欧美精品一区二区| 精品在线视频免费观看| 国产麻豆成人精品| 色一情一乱一伦一区二区三区丨 | 91久久久精品国产| 国产999精品久久久| 日本xxxx人| 亚洲另类春色国产| 欧美一级小视频| re久久精品视频| 欧美在线视频一二三| 婷婷在线免费观看| 亚洲影视在线播放| 精品人妻一区二区三区免费| 成人高清电影网站| 日本高清不卡的在线| 少妇精品视频一区二区| 一个色在线综合| 91网址在线观看精品| 色777狠狠狠综合伊人| 国产精品久久久久99| 久久电影中文字幕| 黑人狂躁日本妞一区二区三区 | 国产日韩成人精品| 亚洲成熟丰满熟妇高潮xxxxx| 久久男人av| 性色av一区二区三区红粉影视| 好男人www在线视频| 亚洲综合免费观看高清完整版在线| 超碰中文字幕在线观看| 中文一区一区三区免费在线观看| 国产一区欧美二区三区| 黄色小网站在线观看| 538prom精品视频线放| 精品国产视频一区二区三区| 久久av中文字幕片| 中文字幕中文字幕在线中心一区 | 91精品国产一区二区三区香蕉| 人与嘼交av免费| 蜜臀av性久久久久蜜臀aⅴ四虎 | 99精品久久| 黄色小网站91| 人人视频精品| 丝袜美腿精品国产二区| 国产精品国产三级国产aⅴ| 亚洲欧洲日韩女同| 久久久久国产免费| 亚洲一区二区三区免费在线观看 | 欧美日韩国产探花| 黑人巨大精品欧美一区二区小视频| 国产调教在线| 国产午夜精品全部视频在线播放| 中文字幕精品在线观看| 亚洲免费av高清| www国产视频| 媚黑女一区二区| 永久久久久久| 丁香婷婷成人| 国产ts一区二区| 毛片av在线| 精品久久久久久综合日本欧美| 日韩成人在线免费视频| 亚洲国产高清aⅴ视频| 97超碰人人看| 国产农村妇女精品一二区| 亚洲在线播放电影| youjizzjizz亚洲| 国产成人精品av| 中中文字幕av在线| 日韩成人中文字幕| 亚洲系列在线观看| 亚洲va韩国va欧美va| 91社区视频在线观看| 国产精品中文字幕日韩精品 | 久久久久久久中文字幕| 久久久夜色精品亚洲| 奇米777在线视频| 午夜在线一区| 国产女主播av| 欧美性感美女一区二区| 99超碰麻豆| 亚洲第一会所| 久久久久国产一区二区三区| 爱久久·www| 亚洲成av人乱码色午夜| 久久久国产免费| 日韩毛片精品高清免费| fc2成人免费视频| 青青青伊人色综合久久| 成人av一级片| 欧美激情精品久久久六区热门| 欧美日韩一区二区三| 国产成人澳门| 成人黄色中文字幕| 亚洲www啪成人一区二区| 国a精品视频大全| 亚洲无线看天堂av| 中文字幕日韩免费视频| 飘雪影院手机免费高清版在线观看| 91麻豆精品国产自产在线观看一区| 亚洲影院在线播放| 亚洲成人免费影院| 特一级黄色录像| 国产精品看片你懂得| 扒开jk护士狂揉免费| 成人丝袜视频网| 国产欧美精品一二三| 欧美专区一区二区三区| 男女视频网站在线观看| 午夜精品亚洲| 久久国产精品免费观看| 色乱码一区二区三区网站| 日韩免费一区二区三区| 综合伊思人在钱三区| 国产亚洲一区在线播放| 99精品国产高清一区二区麻豆| 91在线观看免费高清| 日韩精品第二页| 国产欧美va欧美va香蕉在线| 亚洲精品555| 国产激情综合五月久久| 日本综合字幕| 国产97在线视频| 久久xxx视频| 国产精品女主播| 国产91在线播放精品| 国产精品久久久久久久久久99| 欧美成人资源| 国产精品久久视频| 国产精品亲子伦av一区二区三区| 国产精品video| 日韩精品免费观看视频| 国产欧美日韩精品专区| 四虎影视精品永久在线观看| 国产综合在线观看视频| 国产麻豆精品| 国产高清精品一区二区三区| 好吊妞国产欧美日韩免费观看网站| 国产福利久久| 亚洲黄色录像| 亚洲国产精品一区在线观看不卡| 青青草成人影院| 欧洲金发美女大战黑人| 激情综合视频| 国产激情在线观看视频| 免费在线成人网| 日韩av.com| 国产成人在线免费| jizz日本免费| 国产精品天干天干在线综合| 一起操在线播放| 亚洲国产一区在线观看| 九一国产在线观看| 欧美日韩一级大片网址| 精品人妻aV中文字幕乱码色欲| 亚洲国产成人久久综合一区| 青青草免费在线| 久久精品国产电影| 高清毛片在线观看| 国产精品大陆在线观看| 日韩综合一区二区三区| 久久精彩视频| 天天影视欧美综合在线观看| 亚洲色欲久久久综合网东京热| 香蕉久久国产| 91精品国产三级| 久久色成人在线| 欧美黑人性猛交xxx| 精品福利免费观看| 91禁在线观看| 亚洲精品国精品久久99热一| 18视频免费网址在线观看| 久久99热精品| 亚洲伦理影院| 国产不卡一区二区在线观看| 精品久久久久久久久久久aⅴ| www婷婷av久久久影片| 久久久久国产精品午夜一区| 一区二区三区人妻| 国产人伦精品一区二区| 久久黄色小视频| 精品视频在线看| 天堂网2014av| 欧美人与性动交| 成人午夜亚洲| 久久久水蜜桃| 欧美国产91| 天天干天天综合| 97精品视频在线观看自产线路二| 男人av资源站| 欧美亚洲尤物久久| 午夜福利一区二区三区| 九九精品视频在线| 欧美一区二区三区婷婷| 欧美人xxxxx| 一区在线视频| 欧美日韩一区二区区| 国产精品久久久久aaaa| 波多野结衣在线观看一区| 日韩第一页在线| 国产区美女在线| 91亚洲国产成人精品性色| 色乱码一区二区三区网站| 熟女少妇精品一区二区| 99久久久精品| 国产午夜精品无码一区二区| 欧美一级免费大片| 国产精品久久麻豆| 成人免费福利在线| 成人羞羞视频播放网站| 免费在线观看的毛片| 26uuu精品一区二区| 日本少妇激情舌吻| 亚洲成人三级在线| 精品精品导航| 国产精品二区三区| 精品91久久久久| 性猛交╳xxx乱大交| 亚洲主播在线观看| 亚洲国产精品无码久久| 欧美黑人巨大xxx极品| 日本免费精品| 亚洲色婷婷久久精品av蜜桃| 国产一区二区在线看| 久久精品黄色片| 8x8x8国产精品| www.久久久久.com| 99久久精品免费看国产一区二区三区| 羞羞答答成人影院www| 午夜大片在线观看| 一卡二卡三卡日韩欧美| 国产1区在线观看| 性色av香蕉一区二区| 青青一区二区| 国产原创中文在线观看| 久久综合色8888| 懂色av蜜臀av粉嫩av喷吹| 中文字幕欧美精品在线 | 国产欧美丝袜| 西西裸体人体做爰大胆久久久| 添女人荫蒂视频| 在线亚洲人成电影网站色www| 国产二区视频在线观看| 国产日韩精品入口| 国产在线成人| 久久精品国产亚洲av麻豆| 欧洲精品一区二区三区在线观看| av播放在线| 97久久精品午夜一区二区| 国产日韩欧美高清免费| 变态另类ts人妖一区二区| 91精品国产综合久久精品app| 麻豆蜜桃在线| 日本一区二区在线| 精品一区二区成人精品| 国产一级在线观看视频| 亚洲午夜精品久久久久久久久久久久| 精品日韩视频| 大胆欧美熟妇xx| 91蝌蚪porny| 国产精品久久欧美久久一区| 久久久久久久久久国产| 在线观看欧美理论a影院| 手机av在线免费| 亚洲成a人v欧美综合天堂下载| 精品影院一区| 亚洲综合自拍一区| 裸体一区二区| 三级影片在线看| 亚洲精品综合精品自拍| 国产免费区一区二区三视频免费| 日韩av在线第一页| 亚洲欧洲国产专区| 五月婷婷免费视频| 国产日韩av在线| 国产精品久久久久久久久久妞妞| 99久久99久久精品免费看小说.| 欧美成人一区二区三区片免费| 一区二区视频免费完整版观看| 亚洲色婷婷久久精品av蜜桃| 国产欧美一区二区在线观看| 亚洲成a人片在线| 国产日韩精品在线观看| 香蕉久久夜色精品| 久青草免费视频| 日韩中文在线中文网在线观看 |