我正在使用以下方法确定UTC偏移量并将其传递给PHP变量($utc_offset
)。问题是$utc_offset
仅在第二页加载时有一个值(第一页加载时为空)。如何在一页加载中将UTC偏移量传递给PHP?
<script>
var dateVar = new Date();
var offset = dateVar.getTimezoneOffset();
document.cookie = "offset="+offset/60;
</script>
<?php
echo $utc_offset = $_COOKIE['offset'];
?>
所以:
事实是,要执行您的Javascript,您需要将其发送到浏览器,此时尚未创建所需的cookie。但是,即使您无法在首次加载时解决此问题,也可以通过在创建cookie之后发送AJAX request来实现几乎类似的行为,以便服务器将其获取。
因此,在不知道偏移量但只有AJAX请求的情况下,您将需要处理首次访问,此请求随后会自动发送到服务器,从而解决了此问题。