站長(zhǎng)資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        最詳細(xì)的教你PHP時(shí)間戳與日期時(shí)間的轉(zhuǎn)換

        在之前的文章中給大家?guī)?lái)了《PHP中如何才能將時(shí)間日期格式化?怎么計(jì)算時(shí)間差?》,其中詳細(xì)的介紹了在PHP中應(yīng)該怎樣去將時(shí)間日期格式化和怎樣計(jì)算時(shí)間差,本篇文章我們一起來(lái)看一看,日期與時(shí)間戳的相互轉(zhuǎn)換,希望對(duì)大家有幫助!

        最詳細(xì)的教你PHP時(shí)間戳與日期時(shí)間的轉(zhuǎn)換

        在前面的文章(《PHP中獲取時(shí)間的方法總結(jié)(實(shí)例詳解)》)中我們介紹了怎樣獲取時(shí)間,也就是時(shí)間戳,那么在PHP中我們?cè)鯓硬拍芡瓿蓵r(shí)間戳和日期時(shí)間的相互轉(zhuǎn)換呢?

        日期時(shí)間轉(zhuǎn)為時(shí)間戳

        我們可以通過(guò)time()函數(shù)來(lái)獲取時(shí)間戳,但是time()函數(shù)只能獲取不同時(shí)區(qū)的當(dāng)前時(shí)間的時(shí)間戳,示例如下:

        <?php     $time = time();     echo '當(dāng)前的時(shí)間戳為:'.$time.'<br>'; ?>

        輸出結(jié)果:

        最詳細(xì)的教你PHP時(shí)間戳與日期時(shí)間的轉(zhuǎn)換

        當(dāng)我們想要將一個(gè)具體的時(shí)間轉(zhuǎn)化為時(shí)間戳,應(yīng)該怎么操作呢?這時(shí)候我們可以使用strtotime()函數(shù)來(lái)實(shí)現(xiàn)。

        • strtotime()函數(shù)

        strtotime()函數(shù)可將英文文本描述的任何字符串型的日期轉(zhuǎn)化為 UNIX 時(shí)間戳,它的語(yǔ)法格式如下:

        strtotime(字符串形式的時(shí)間 [,用來(lái)計(jì)算返回值的參數(shù)])

        示例如下:

        <?php     echo time().'<br>';//當(dāng)前時(shí)間的時(shí)間戳     echo strtotime('now').'<br>';//使用now獲取的時(shí)間戳,也就是當(dāng)前時(shí)間戳     echo strtotime("1 September 2021").'<br>';//2021年九月一日的時(shí)間戳     echo strtotime("+1 day").'<br>';//當(dāng)前時(shí)間加上一天的時(shí)間戳     echo strtotime("+1 week 1 days 1 hours 1 seconds").'<br>';//當(dāng)前時(shí)間加上一周一天一小時(shí)一秒的時(shí)間戳     echo strtotime("next Thursday").'<br>';//下周四的時(shí)間戳     echo strtotime("last Monday").'<br>';//上周一的時(shí)間戳 ?>

        輸出結(jié)果:

        最詳細(xì)的教你PHP時(shí)間戳與日期時(shí)間的轉(zhuǎn)換

        由上述示例能夠看出,通過(guò)strtotime函數(shù)達(dá)到了具體時(shí)間轉(zhuǎn)話時(shí)間戳的問(wèn)題,接下來(lái)在介紹一種更直觀的函數(shù)能夠完成具體時(shí)間轉(zhuǎn)化為時(shí)間戳。

        • mktime()函數(shù)

        mktime()函數(shù)能夠返回指定時(shí)間的時(shí)間戳,并且比strtotime函數(shù)要直觀一些。它的語(yǔ)法格式如下:

        mktime(指定時(shí)間時(shí),指定時(shí)間分,指定時(shí)間秒,指定時(shí)間月,指定時(shí)間日,指定時(shí)間年)

        示例如下:

        <?php echo '當(dāng)前的時(shí)間戳是:'.mktime();  // 沒(méi)有設(shè)置參數(shù)則默認(rèn)取得當(dāng)前GMT時(shí)間 ?>

        輸出結(jié)果:

        最詳細(xì)的教你PHP時(shí)間戳與日期時(shí)間的轉(zhuǎn)換

        獲得指定時(shí)間2021年10月21日15點(diǎn)0分0秒的UNIX時(shí)間戳,示例如下:

        <?php echo '2021年10月21日15點(diǎn)0分0秒的時(shí)間戳是:'.mktime(15,0,0,10,21,2021);  //設(shè)置參數(shù)表示GMT時(shí)間2021年10月21日15點(diǎn)0分0秒 ?>

        輸出結(jié)果:

        最詳細(xì)的教你PHP時(shí)間戳與日期時(shí)間的轉(zhuǎn)換

        由上述示例,也可以通過(guò)mktime函數(shù)來(lái)實(shí)現(xiàn)時(shí)間日期轉(zhuǎn)化為時(shí)間戳。

        上面介紹了都是日期轉(zhuǎn)化為時(shí)間戳的函數(shù)方法,那接下來(lái)我們來(lái)看一看,時(shí)間戳怎樣轉(zhuǎn)化為我們習(xí)慣的時(shí)間日期。

        時(shí)間戳轉(zhuǎn)化日期時(shí)間

        時(shí)間戳轉(zhuǎn)化為日期時(shí)間需要用到date()函數(shù),這個(gè)函數(shù)用于把時(shí)間日期格式化,格式化的過(guò)程其實(shí)也可以看成是一個(gè)轉(zhuǎn)化的過(guò)程。date()函數(shù)的語(yǔ)法格式如下:

        date(轉(zhuǎn)化后的時(shí)間格式,轉(zhuǎn)化前的時(shí)間戳)

        其中轉(zhuǎn)化后的時(shí)間格式有很多種,先給大家列舉出來(lái)一些:

        H—使用 24 小時(shí)格式表示小時(shí)數(shù),零 00 到 23

        m—使用兩位的數(shù)字表示當(dāng)前月份 01 到 12

        d—表示月份中的第幾天,要用兩位數(shù)來(lái)表示,不足兩位數(shù)的話,前面加個(gè)0。

        Y—使用 4 位數(shù)字表示完整的年份

        s—使用兩位數(shù)字表示秒數(shù),零 00 到 59

        i—使用兩位數(shù)字表示分鐘數(shù),零 00 到 59

        接下來(lái)用1634799600這個(gè)時(shí)間戳來(lái)實(shí)驗(yàn)一下吧,這個(gè)時(shí)間戳是上個(gè)示例中,2021年10月21日15點(diǎn)0分0秒的時(shí)間戳。

        示例如下:

        <?php echo '1634799600轉(zhuǎn)化為日期時(shí)間的年份為:',date('Y', 1634799600),'<br/>'; echo '1634799600轉(zhuǎn)化為日期時(shí)間的月份為:',date('m', 1634799600),'<br/>'; echo '1634799600轉(zhuǎn)化為日期時(shí)間的月內(nèi)天數(shù)為:',date('d', 1634799600),'<br/>'; echo '1634799600轉(zhuǎn)化為日期時(shí)間的小時(shí)數(shù)為:',date('H', 1634799600),'<br/>'; echo '1634799600轉(zhuǎn)化為日期時(shí)間的小時(shí)內(nèi)分鐘數(shù)為:',date('i', 1634799600),'<br/>'; echo '1634799600轉(zhuǎn)化為日期時(shí)間的分鐘內(nèi)秒數(shù)為:',date('s', 1634799600),'<br/>'; ?>

        輸出結(jié)果:

        最詳細(xì)的教你PHP時(shí)間戳與日期時(shí)間的轉(zhuǎn)換

        可以看出,通過(guò)date函數(shù)能夠輸出正常的日期時(shí)間,但是這樣看仍然不符合我們的日常習(xí)慣,只需要將其中的參數(shù)結(jié)合在一起就可以了,示例如下:

        <?php echo '1634799600轉(zhuǎn)化為日期時(shí)間為:',date('Y-m-d H:i:s', 1634799600); ?>

        輸出結(jié)果:

        最詳細(xì)的教你PHP時(shí)間戳與日期時(shí)間的轉(zhuǎn)換

        由此我們便完成了時(shí)間戳對(duì)日期時(shí)間的轉(zhuǎn)化。

        大家如果感興趣的話,可以點(diǎn)擊《PHP視頻教程》進(jìn)行

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
        主站蜘蛛池模板: 久久精品国产亚洲av高清漫画| 久久精品无码一区二区三区免费 | 四虎精品成人免费观看| 日韩精品无码久久一区二区三| 国产精品成人观看视频国产| 亚洲高清国产拍精品青青草原| 99久久免费国产精品| 国产成人精品精品欧美| 久久亚洲精精品中文字幕| 另类国产精品一区二区| 最新国产の精品合集| 国产成人久久精品一区二区三区| 中文精品99久久国产| 国产内地精品毛片视频| 99久re热视频这里只有精品6| 国产精品无码日韩欧| 欧美精品v欧洲精品| 欧美日韩精品久久久久| 精品人妻少妇嫩草AV无码专区| 8050免费午夜一级国产精品| 99久久国产热无码精品免费| 亚洲AV永久无码精品一百度影院| 日韩欧美一区二区三区中文精品| 国产精品小黄鸭一区二区三区| 欧美精品华人在线| 久久精品国产福利国产秒| 99国产精品永久免费视频| 91精品国产综合久久精品| 久久精品国产亚洲AV无码偷窥| 亚洲精品~无码抽插| 亚洲国产精品一区二区久久hs| 无码精品人妻一区二区三区影院| 久久中文精品无码中文字幕| 国产精品亚洲综合专区片高清久久久| 91久久精品国产免费直播| 欧美激情精品久久久久| 亚洲精品国产成人99久久| 91人前露出精品国产| 2020最新久久久视精品爱| 99久久99久久精品国产| 国产精品免费久久|