相对于当前(系统)时区,在PHP中获取UTC偏移的最简单方法是什么?
发布于 2018-08-28 08:57:28
date("Z")
将返回相对于服务器时区而不是用户的计算机时区的UTC偏移量。要获取用户的计算机时区,您可以使用javascript getTimezoneOffset()
函数返回UTC时间和本地时间之间的时差,以分钟为单位。
<script type="text/javascript">
d = new Date();
window.location.href = "page.php?offset=" + d.getTimezoneOffset();
</script>
并且在page.php
其中保存您的PHP代码,您可以使用该偏移值执行任何操作。或者,不是重定向到另一个页面,您可以根据需要通过Ajax将偏移值发送到您的php脚本。
发布于 2018-08-28 10:25:36
$this_tz_str = date_default_timezone_get();
$this_tz = new DateTimeZone($this_tz_str);
$now = new DateTime("now", $this_tz);
$offset = $this_tz->getOffset($now);
未经测试,但应该工作
https://stackoverflow.com/questions/-100000666
复制相似问题