我需要将以下JS函数转换为PHP中的确切函数。
var user_timezone_offset = new Date().getTimezoneOffset()*60;
这是我的PHP代码,但$ user_timezone_offset返回的值与JS不同:
$TZ = 'America/Chicago';
$user_localtime = new DateTime("now", new DateTimeZone($TZ));
$user_timezone_offset = $user_localtime->getOffset();
两种情况下返回的值必须完全相同。现在是一个3600(来自PHP),第二个值是负-3600(来自JS)
答案 0 :(得分:2)
new Date().getTimezoneOffset()
以分钟为单位给出偏移量,因此只需将其乘以60即可获得以秒为单位的偏移量,这是PHP使用的。
var user_timezone_offset = new Date().getTimezoneOffset() * 60;
答案 1 :(得分:-1)
这两种语言在计算差值时使用不同的位置,如utc - tz或tz - utc。你需要在javascript端乘以“-60”。
var user_timezone_offset = new Date().getTimezoneOffset() * -60;