我正在尝试在PHP中使用date_default_timezone_set()
,它接受timezone identifier作为唯一参数。
如何仅使用javascript获取的时间偏移量来获取时区标识符,例如:
var visitortime = new Date();
timezone = visitortime.getTimezoneOffset();
现在在PHP中,我有例如:
$timezone = -120;
此时如何将$timezone
与date_default_timezone_set()
一起使用?
我试图通过this answer,但我不确定如何正确设置date_default_timezone_set()
的第三个参数 - isdst
参数。
我如何知道它是0还是1,具体取决于从javascript获得的值,在我的情况下-120
?
答案 0 :(得分:3)
您无法仅通过了解UTC时间的偏移来识别时区,因为时区定义还包含夏令时切换日期。
例如,在美国,内华达州和亚利桑那州目前拥有相同的时间,与UTC相同的偏差(-0700),但内华达州位于美国/太平洋时区,亚利桑那州位于美国/凤凰城,没有日光节省。
去问你的用户。