hijri
v0.4.0
hijri 是紅寶石的完整陰曆伊斯蘭回曆 lib。
伊斯蘭曆或穆斯林曆或回曆:是一種陰曆,由 12 個太陰月組成,一年有 354 或 355 天。它用於確定許多穆斯林國家的事件日期(與公曆同時),並被世界各地的穆斯林用來確定慶祝伊斯蘭聖日和節日的適當日期。第一年是伊斯蘭教先知穆罕默德從麥加遷徙到麥地那的一年,稱為「希吉拉」。每個編號的年份被指定為 H(代表 Hijra)或 AH(代表拉丁文 anno Hegirae)(在 Hijra 年份)。希吉拉 (BH) 之前的有限年數用於確定與伊斯蘭教相關的事件的日期,例如穆罕默德於 53 BH 誕生。目前的伊斯蘭歷是伊斯蘭歷 1431 年,約從 2009 年 12 月 18 日(晚上)到 2010 年 12 月 6 日(晚上)。
http://en.wikipedia.org/wiki/Islamic_calendar
將此行新增至應用程式的 Gemfile 中:
gem 'hijri'
然後執行:
$ bundle
或自己安裝:
$ gem install hijri
require 'hijri'
# you can create hijri date from stdlib Date class.
h = Date . today . to_hijri # => #<Hijri::Date:0x007f875e8c84e8 @year=1436, @month=2, @day=16>
# or you can initialize new one.
hijri = Hijri :: Date . new 1430 , 1 , 3 # => #<Hijri::Date:0x007f875e8dbb38 @year=1430, @month=1, @day=3>
# or you can get today hijri date directly.
today = Hijri :: Date . today # => #<Hijri::Date:0x007f875e8d8410 @year=1436, @month=2, @day=16>
# and you can convert hijri date to greogian date also.
hijri . to_greo # => #<Date: 2009-01-01 ((2454833j,0s,0n),+0s,2299161j)>
# and there is DateTime too
date_and_time = Hijri :: DateTime . now # => #<Hijri::DateTime:0x007f875e8eac00 @year=1436, @month=2, @day=16, @hour=14, @minute=14, @second=39, @zone="+03:00">
# hijri support strftime method with the same options as Greogian date format method
Hijri :: DateTime . now . strftime ( '%c' ) # => "Ahad Rabia I 20 16:00:25 1436"
該程式庫旨在支援以下 Ruby 實作並對其進行測試:
如果某些東西在這些 Ruby 版本之一上不起作用,那就是一個錯誤。
該庫可能會無意中在其他 Ruby 實作上工作(或似乎工作),但是僅為上面列出的版本提供支援。
如果您希望這個函式庫支援另一個 Ruby 版本,您可以自願成為維護者。作為維護者需要確保所有測試都運行並傳遞該實作。當您的實施出現問題時,您將負責及時提供補丁。如果在主要版本發佈時存在特定實作的關鍵問題,則可能會放棄對該 Ruby 版本的支援。
git checkout -b my-new-feature
)git commit -am 'Added some feature'
)git push origin my-new-feature
)