您好,登錄后才能下訂單哦!
本篇內容介紹了“兩大Perl時間函數的區別是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
Perl時間函數
Perl語言中有兩個取得Perl時間函數:localtime()和gmtime()
兩個函數的用法一樣,區別在于localtime為取得本地時間,gmtime格林威治時間
#!/usr/bin/Perl
#getlocaltime
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time);
其中:
$sec代表秒數[0,59]
$min代表分數[0,59]
$hour代表小時數[0,23]
$mday代表是在這個月的第幾天[1,31]
$mon代表月數[0,11],要將$mon加1之后,才能符合實際情況。
$year從1990年算起的年數
$wday從星期六算起,代表是在這周中的第幾天[0-6]
$yday從一月一日算起,代表是在這年中的第幾天[0,364]
$isdst只是一個flag
知道這些變量之后,就可以在CGI應用程序中拿來應用了。此外,Perl時間函數也可以用下面這一行指令在UNIX系統下取得系統的時間。為了避免錯誤發生,***用絕對路徑的方法來取得系統時間,如果絕對路徑不清楚的話可以用”whichdata”這個指令來得知。***要提字符的話,就不能正確執行系統的程序了。$data=’/usr/bin/data’;而在Perl5版本中,也可以用下面這一行指令來取得系統時間
Perl時間函數的例子:
格式化所需要的時間變量:
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time);
#2001年08月09日
$yyyymmddZH=sprintf("%04d年%02d月%02d日",$year+1900,$mon+1,$mday);
#2001年8月9日
$yyyymmddZH2=sprintf("%d年%d月%d日",$year+1900,$mon+1,$mday);
#2001.08.09
$yyyymmdd=sprintf("%04d.%02d.%02d",$year+1900,$mon+1,$mday);
#2001.08.09
$yyyymmdd2=sprintf("%d.%d.%d",$year+1900,$mon+1,$mday);
#13點13分02秒
$hhmmssZH=sprintf("%02d點%02d分%02d秒",$hour,$min,$sec);
#13點13分2秒
$hhmmssZH2=sprintf("%d點%d分%d秒",$hour,$min,$sec);
#13:13:02
$hhmmss=sprintf("%02d:%02d:%02d",$hour,$min,$sec);
#13:13:2
$hhmmss2=sprintf("%d:%d:%d",$hour,$min,$sec);
#周四
$weekZH=sprintf("%s",("周日","周一","周二","周三","周四","周五","周六")[$wday]);
#Thursday
$weekE=sprintf("%s",("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")[$wday]);
#Thu
$week=sprintf("%s",("Sun","Mon","Tue","Wed","Thu","Fri","Sat")[$wday]);
“兩大Perl時間函數的區別是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。