我试图将用户的时区作为单词上的字符串.例:
$timezone = "Asia/Tel_Aviv";
Run Code Online (Sandbox Code Playgroud)
在研究这个问题时,我得到了如何使用Javascript获取时区偏移,但我仍然不清楚如何将时区偏移量转换为php中的时区字符串,如上所示?
或者,我在Javascript/PHP中使用哪个其他方法获取每个用户的时区字符串?
我真的不确定如何处理这个问题.
你不能单独用PHP做到这一点.
您可以使用Javascript在cookie中设置值,然后使用PHP在下一页(重新)加载时读取cookie.
使用Javascript:
var dateVar = new Date()
var offset = dateVar.getTimezoneOffset();
document.cookie = "offset="+offset;
Run Code Online (Sandbox Code Playgroud)
PHP:
echo $_COOKIE['offset'];
Run Code Online (Sandbox Code Playgroud)
使用此选项可将偏移量转换为PHP中的友好时区名称.Javascript以分钟为单位返回偏移量,而此PHP函数期望输入为秒 - 因此乘以60.第三个参数是您是否处于夏令时的布尔值.阅读手册并更新代码以满足您的需求.
echo timezone_name_from_abbr("", intval($_COOKIE['offset'])*60, 0);
Run Code Online (Sandbox Code Playgroud)
http://php.net/manual/en/function.timezone-name-from-abbr.php
| 归档时间: |
|
| 查看次数: |
5949 次 |
| 最近记录: |