2012-08-03 88 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的规则计算出时间戳。