前面的話
在Web程序開發(fā)時,時間發(fā)揮著重要的作用,不僅在數(shù)據(jù)存儲和顯示時需要日期和時間的參與,好多功能模塊的開發(fā),時間通常都是至關(guān)重要的。網(wǎng)頁靜態(tài)化需要判斷緩存時間、頁面訪問消耗的時間需要計算、根據(jù)不同的時間段提供不同的業(yè)務(wù)等都離不開時間。PHP為我們提供了強大的日期和時間處理功能,通過內(nèi)置的時間和日期函數(shù)庫,不僅能夠得到PHP程序在運行時所在服務(wù)器中的日期和時間,還可以對它們進行任意檢查和格式化,以及在不同格式之間進行轉(zhuǎn)換等。本文將詳細介紹PHP中的日期和時間
[注意]關(guān)于javascript的日期和時間相關(guān)內(nèi)容請移步至此
時間戳
UNIX時間戳是保存日期和時間的一種緊湊簡潔的方法,是大多數(shù)UNIX系統(tǒng)中保存當前日期和時間的一種方法,也是在大多數(shù)計算機語言中表示日期和時間的一種標準格式。UNIX時間戳是從1970年1月1日0點(UTC/GMT的午夜)開始起到當前時間所經(jīng)過的秒數(shù)
因為UNIX時間戳是一個32位的數(shù)字格式,所以特別適用于計算機處理,例如計算兩個時間點之間相差的天數(shù)。另外,由于文化和地區(qū)的差異,存在不同的時間格式,以及時區(qū)的問題。所以,UNIX時間戳也是根據(jù)一個時區(qū)進行標準化而設(shè)計的一種通用格式,并且這種格式可以很容易地轉(zhuǎn)換為任何格式
也因為UNIX時間戳是一個32位的整數(shù)表示的,所以在處理1902年以前或2038年以后的事件,將會遇到一些問題。另外,在Window下,由于時間戳不能為負數(shù),如果使用PHP中提供的時間戳函數(shù)處理1970年之前的日期,就會發(fā)生錯誤。要使PHP代碼具有可移植性,必須牢記這一點
【strtotime()】
strtotime()預期接受一個包含美國英語日期格式的字符串并嘗試將其解析為Unix時間戳(自January 1 1970 00:00:00 GMT 起的秒數(shù)),其值相對于now參數(shù)給出的時間,如果沒有提供此參數(shù)則用系統(tǒng)當前時間
int strtotime ( string $time [, int $now = time() ] )
延伸閱讀
學習是年輕人改變自己的最好方式