一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

PHP中的日期處理方法集錦

本文包含以下內容: 
1、 得到目前的日期和時間-我們有多少種方式? 
2、 改變日期顯示的方式-日期和時間的顯示形式 
3、 轉換現在的日期為Unix的時間戳值 
4、 改變日期 
a. 增加時間 
b. 減去時間 
c. 找出兩日期之間的間隔 
5、 為php添加DateAdd函數 
6、 為php添加DateDiff函數 

**得到目前的日期和時間 

在Unix中,時間的表示方式為計算從1970年1月1日零時起所過去的秒數,這稱為UNIX 時間戳(Unix Epoch)。 
如果我們有這樣一段的代碼: 

echo time(); 

將返回值958905820 
而此時的時間為2000年5月21日12時43分。 
你也許會說這相當不錯。當這對我毫無幫助,或者只有一點幫助。在php中,對日期處理的函數都必須用到由time()返回的時間戳值。同時,由于php在Unix和Windows系統中均使用同樣的時間戳值,這就允許你不需要修改代碼即可在不同的系統間移植。另外的一個好處是time()函數返回的是一個整數,你可以將其作為整數字段或文本字段存入數據庫,而不必使用特別的日期/時間字段。 
你已經基本了解了Unix的時間戳值,現在讓我們來展示它的實際用途。 

改變日期顯示的方式-日期和時間的顯示形式 

php提供兩個辦法來將Unix的時間戳值轉換成為有用的數據。第一個是date()函數。這個函數有兩個參數-第一個字符串用于設定你所希望返回的格式,第二個為Unix的時間戳值。 
格式化字符串通過一些簡單的特殊格式化字符來顯示你所希望看到的格式的日期和時間。假設你希望日期以這樣的格式顯示“18h01 Sunday 21 May”。 
我們需要對字符串中的每一部分使用一個特殊格式化字符,你可以從php手冊中日期和時間函數庫中找到。這樣的特殊格式化字符數量不少,他們所表示的類似于星期幾、月的英文名、用2位或4位數表示的年份,是否是上午(AM)或下午(PM)以及其他。對于這個例子我們需要的特殊字符為: 
‘H' -24 小時制的小時 
‘i'- 分鐘 
‘l'- 星期幾的英文全名 
‘d'- 本月的第幾日 
‘F'- 月份的英文全名 
因此我們的格式化字符串為”Hhi l d F”, php代碼為: 

echo date ("Hhi l d F" ,time()); 

當我們執行這段代碼,我們發現我們所得到的結果為: 
180609 Sunday 21 May 
這樣的結果看起來有些奇怪。讓我們再查一下php手冊,原來'h'所代表的是12 小時制的小時數。這再次證明了一句真理:“計算機只做你所告訴它該做的,而不是你想要它做的”。我們有兩個選擇。第一個是在h前使用轉義字符“”: 
echo date ("Hhi l d F", time()); 
我們得到這樣的結果: 
18h12 Sunday 21 May 
這正是我們所要的。但如果我們在一個十分復雜的句子中需要包含日期和時間,我們是否需要對每個字符使用轉義字符? 
答案當然是不。我們使用另一個函數strftime()。 
strftime()有兩個好處。第一個好處我們并不在本文討論范圍內-如果你使用setlocale()函數,你可以通過strftime得到相應語言的月份的名稱。另外的一個好處是你可以將特別的日期和時間的格式化字符包含在你的字符串中。這同時也意味著無論你是否要學習date()函數的所有特殊格式化字符,你都必須學習一整套完全不同的格式化字符。 
strftime()工作的方式和date()沒有什么不同,除了特殊格式化字符的前面必須添加一個百分號%。如果用strftime()函數,前面例子的代碼如下: 

echo strftime ("%Hh%M %A %d %b" ,time()); 

結果為: 
18h24 Sunday 21 May 
這也許看起來將簡化繁,但考慮一下如果你所需要的顯示的為"Today is Sunday 21 May 2000. The time is somewhere close to 18h24." 我想使用date()函數無疑令人感到厭煩。 
在開始的時候,我提及我們有兩種方式可以從Unix時間戳值中得到有用的數據。我們剛剛了解了date()和strftime()。另一個getdate()。這個函數只需要Unix 的時間戳值作為參數,而函數的返回值為日期和時間的數組。 
下面是一個例子: 

$date_time_array = getdate (time()); 
echo $date_time_array[ "weekday"]; 

返回的結果為: 
Sunday 
除了"weekday",該數組的其他部分為: 
"seconds"  主站蜘蛛池模板: 视频一区视频二区在线观看 | 看全色黄大色大片 | 美女扒开双腿让男人爽透视频 | 国产精品嫩草影院在线观看免费 | 黄黄的网站在线观看 | 色天天综合色天天害人害己 | 国产精品乱码一区二区三区 | 国产精品麻豆99久久 | 加勒比一本大道在线 | 一级做a爰片久久毛片一 | 国产成人精品三区 | 欧美国产亚洲精品a第一页 欧美国产一区二区二区 | 日韩视频91 | 国产成人精品视频 | 成人午夜大片免费7777 | 成人97 | 91福利视频免费观看 | 国产精品99久久 | 日本zzzwww大片免费 | 久久亚洲国产成人亚 | 99999久久久久久亚洲 | 日韩一级片网址 | 男人猛桶女人下面视频国产 | 欧美性一交激情视频在线 | 最新97超级碰碰碰碰久久久久 | 国产对白精品刺激一区二区 | 中文字幕一区二区在线视频 | 99久久国产| 四虎永久地址4hu紧急入口 | 国产对白91色拍高清精品 | 在线国产一区二区三区 | 色欧美色 | eeuss影院www在线观看手机 | 中文字幕在线观看一区 | 五月天婷婷综合 | 欧美日本高清视频在线观看 | swag精品 | 亚欧精品一区二区三区四区 | 亚色中文| 欧美激情区 | 好吊日在线视频 |