2012-08-03 86 views
2

我需要比較PHP中的Bikram Sambat日期。今天在公元今天是2012-08-03,今天的BS日期是2069-04-19。在BS中,我們有一個月的總天數在29到32之間。同樣,這些日子每年都不一致。例如,今年當月有31天,明年同月有30天甚至32天。PHP比較非A.D.日期

我可以想到的方式是,使用一個PHP日期轉換器類(我已經有),將給定的BS日期轉換爲等效的AD日期並進行比較。只是我想知道有沒有其他更好的方式來做到這一點,而不使用我有類?

通過在這裏比較我的意思是 a)查找給定日期範圍之間的日期。 b)檢查一個日期是否在給定的兩個日期範圍內 c)和其他比較,我們可以用AD日期使用php日期功能

感謝任何幫助,高度讚賞。

回答

2

通常,我會建議將兩個日期轉換爲unix時間戳(自1970-1-1 AD以來的秒數),這是一個簡單的整數值用於比較。

顯然,BS背後沒有簡單的邏輯,所以你將無法找到一個直接讓你從這裏到達那裏的分析表達式。如果你不想使用外部類,你可以編寫一些從1970-1-1 AD開始的函數(遞歸),你可以手動將其轉換爲BS,然後根據BS的規則計算出時間戳。