diff_days = (end_time + time_zone * TIME_OF_HOUR) / TIME_OF_DAY -
(begin_time + time_zone * TIME_OF_HOUR) / TIME_OF_DAY
化簡(jiǎn)計(jì)算方式的缺陷:
diff_days = (end_time - begin_time) / TIME_OF_DAY
該方式若是時(shí)間差在 1 天內(nèi)的話(huà),會(huì)出現(xiàn) 1 天的誤差。
一般我們計(jì)算兩個(gè)時(shí)間差的天數(shù)時(shí),關(guān)心的是年月日的天數(shù)差。
例如 2018-3-26 12:00:00 到 2018-3-27 11:00:00 期望得到的天數(shù)差為 1 天。
若通過(guò)化簡(jiǎn)公式計(jì)算的話(huà),結(jié)果為 0 。
而非化簡(jiǎn)公式的話(huà),結(jié)果為 1 。
當(dāng)然如果程序關(guān)心的就是點(diǎn)到點(diǎn)之間的天數(shù)差,化簡(jiǎn)計(jì)算公式也是沒(méi)問(wèn)題的。