确定未来日期的夏令时

Ascertain DST for Future Date

本文关键字:夏令时 日期 未来      更新时间:2023-09-26

作为一个JavaScript新手,我花了很长时间试图解决这个问题:我允许访客预订未来的会议日期&时间(在访问者的当地时间)

我在英国时间,虽然不想限制可用的会议时间,但我想向访客展示他们要求的日期/时间的英国时间。

因此,我从访问者那里获得了未来的日期,获得了他们的当地时区ofset,所以现在我需要确定(对于会议日期)访问者的当地时间和/或英国时间是否受夏令时限制,并进行必要的调整。

我见过一些函数可以确定夏令时在当前日期是否有效,但我看不到一个函数能在未来日期或不同时区起到同样的作用。有这样的功能吗?或者我需要找到访问者的TZ并根据时区开始日期/结束日期列表运行未来日期吗?

谨致问候,Nick

正如James在问题注释中所建议的,这最好在后端代码中完成。您说您使用的是PHP,所以您应该查看DateTimeZone::getTransitions,或者IntlCalendar::inDaylightTime

但是,在JavaScript中也有使用时区的解决方案。您需要此处列出的库之一。特别是,您可能想要查看时刻时区,您可以这样做:

moment.tz('2015-07-01','Europe/London').isDST()