Ruby way --- 日期和時間類

 

1. Time.new / Time.now 獲取當前日期和時間

 

2. mktime / local (使用本地時區) : 根據傳遞給它的參數創建一個新的Time對象。傳遞的時間單位是按由長到短的順序指定:年、月、日、小時(0~23)、分鐘、秒、微妙。除了年以外其它可選。默認值是可能的最小值。

 

Time.mktime(2008) #2008.1.1 0:00:00
Time.mktime(2008,10,15,10,20,20) # 2008.10.15 10:20:20
Time.local(2008,10,15,10,20,20) # 2008.10.15 10:20:20
 

    gm / utc(採用GMT或UTC) :

 

Time.local(2008,10,15,10,20,20) # 2008.10.15 10:20:20 +0800
Time.gm(2008,10,15,10,20,20) # 2008.10.15 10:20:20 UTC

 

3. to_a : 將時間轉換爲相關值的數組,從下標0-9依次爲:秒(sec),分鐘(min),小時(hour),日期(day/mday),月(mon/month),年(year),星期幾(wday)(0..6),一年中的第幾天(yday),是否爲夏令時間(true或false)和時區(zone)(用字符串表示)。

 

 

t = Time.local(2008,10,15,10,20,20)
puts t.to_a  #[20,20,10,15,10,2008,3,289,false,'中國標準時間']

 

4. wday: 返回一星期中的第幾天(0表示週日)。

     yday: 返回一年中的第幾天。

     mday: 返回一個月中第幾天。

 

 

5. Time.at : 根據從紀元(1 Jan 1970 GMT)開始的秒數創建新的時間。

 

6. 在特定時間上增加間隔來獲取新的時間,間隔的單位爲秒。

 

t = Time.local(2008,10,15,10,20,20)
t1 = t + 60 # t往後1分鐘
t2 = t + 3600 # t往後1小時

    如果要獲取兩個時間的間隔,將兩個Time對象相減將得到秒數。如上面

 

t1 - t # 60

7. 日期和時間值得格式化輸出: strftime.

    該方法能夠識別的常用指令有:

  • %a :星期中天數的縮寫,如 "Sun"
  • %A :完整的星期中天數,如 "Sunday"
  • %b :月名稱的縮寫,如 "Jan"
  • %B :完整的月名稱,如 "January"
  • %d :一個月中第幾天(01..31)
  • %H :以24小時製表示的時間(00..23)
  • %I  :以12小時製表示的時間(1..12)
  • %m :月份(1..12)
  • %M :分鐘(00..59)
  • %p : AM 或 PM
  • %S :秒(00..59)
  • %w:一星期中的第幾天(星期日爲0)
  • %x :只顯示日期,不顯示時間
  • %X :只顯示時間,不顯示日期,以 HH:MM:SS的格式
  • %y :兩位表示的年份
  • %Y :四位的年份
  • %Z :時區

在web頁面中通常需要將日期以中文的形式表示出來,可以使用如下的方式:

 

t = Time.now
t.strftime("%Y年%m月%d日 %H時%M分%S秒")  #XXXX年XX月XX日 XX時XX分XX秒

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章