第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Perl構(gòu)造日期對(duì)象和計(jì)算日期間天數(shù)差的問題

Perl構(gòu)造日期對(duì)象和計(jì)算日期間天數(shù)差的問題

Perl構(gòu)造日期對(duì)象和計(jì)算日期間天數(shù)差的問題
查看完整描述

2 回答

?
慕妹3242003

TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超6個(gè)贊

時(shí)間相減
use Date::Calc qw( Delta_Days );
print Delta_Days(2009,8,21,2010,8,21),"\n";
# calculate 2009-8-21 to 2010-8-21
# result 365

PERL時(shí)間操作對(duì)象
Perl中的time() 函數(shù)返回以紀(jì)元秒形式表示的當(dāng)前日期和時(shí)間。如果你打算把它轉(zhuǎn)換為字符串,就可使用gmtime() 和localtime() 函數(shù):
$now = localtime(time());

($sec, $min, $hour, $day, $mon, $year, $wday, $yday, $isdst) = localtime(time());

如果調(diào)用 localtime() 或gmtime() 時(shí)不帶參數(shù),它將自己調(diào)用time()

$now = localtime();

($sec, $min, $hour, $day, $mon, $year, $wday, $yday, $isdst) = localtime();

常見的日期和時(shí)間操作

如果你打算計(jì)算兩個(gè)時(shí)刻之間的時(shí)間段,只需將它們轉(zhuǎn)換為相應(yīng)的紀(jì)元秒,然后兩數(shù)相減即可:

$difference_in_seconds = $later_datetime -$earlier_datetime;

要把秒轉(zhuǎn)換為分,時(shí),或天數(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天后是幾號(hào)?”:

$then = time() + 86400 * 4;

print scalar localtime $then;

它給出的答案精確到秒。例如,如果4天后的紀(jì)元秒值為932836935, 你可以輸出日期的字符串如下;

Sat Jul 24 11:23:17 1999

如果你打算輸出那個(gè)日期的午夜時(shí)分 (如”Sat Jul 24 00:00:00 1999〃) 使用如下模塊:$then = $then - $then % 86400; # 去掉那個(gè)日期的尾巴

類似地,你可以用四舍五入法,輸出最靠近午夜時(shí)分的日期:

$then += 43200; # add on half a day

$then = $then - $then % 86400;# truncate to the day

如果你的時(shí)區(qū)距離GMT為相差偶數(shù)個(gè)小時(shí),這就管用了。并不是所有的時(shí)區(qū)都是很容易處理的。你所真正需要的是在你自己的時(shí)區(qū)內(nèi)計(jì)算紀(jì)元秒,而不是在GMT中計(jì)算。

Perl 中的名為Time::Local的模塊,可以提供兩個(gè)函數(shù) timelocal() 和timegm()。其返回值同 localtime() 和gmtime() 一樣。

use Time::Local;

$then = time() + 4*86400;

$then = timegm localtime $then;

# local epoch seconds
$then -= $then % 86400;

# truncate to the day

$then = timelocal gmtime $then;

# back to gmt epoch seconds

print scalar localtime $then, “\n”;



查看完整回答
反對(duì) 回復(fù) 2019-03-31
  • 2 回答
  • 0 關(guān)注
  • 1067 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)