如何在 PHP 中将默认时区设置为用户的本地时区? [复制]

Posted

技术标签:

【中文标题】如何在 PHP 中将默认时区设置为用户的本地时区? [复制]【英文标题】:How to set the default timezone to the user's local timezone in PHP? [duplicate] 【发布时间】:2017-07-05 03:46:44 【问题描述】:

我想将默认时区设置为用户的本地时区,请在下面找到我的代码:

date_default_timezone_set("Asia/Karachi");
$currentHour = date('h:i');

我的代码可以正常工作,但仅适用于卡拉奇;如果用户在其他国家/地区,它可能无法正常工作。

【问题讨论】:

你不能。 php 对您的客户端了解不多 ***.com/a/5607444/4248328 和***.com/a/16529135/4248328 您是怀疑它不起作用还是真的知道它不起作用? 【参考方案1】:

在服务器端无法获取用户的时区,只能在客户端进行猜测。

如果您依赖获取用户的 IP 地址,那么您可以对其进行地理定位并推断时间。

这通常是通过询问用户(例如,当他们注册时)他们所在的时区,然后在您的时间计算中使用它。

或者使用这个javascript解决方案

http://www.onlineaspect.com/2007/06/08/auto-detect-a-time-zone-with-javascript/

【讨论】:

它返回 -300 但我如何使用它来获取 php 中的时区 如果你想将时区从客户端传递到服务器端..你应该使用ajax 参考这个问题***.com/questions/13/determine-a-users-timezone.. 这会帮助你【参考方案2】:

如果您想将时区设为全球性而不是固定到单个时区,那么我想您应该使用 UTC 时区,其中有两部分用于美国,另一部分用于世界其他地区。

Hope this link will work. Click here to know more

【讨论】:

以上是关于如何在 PHP 中将默认时区设置为用户的本地时区? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

将celery定时任务设置为根据本地时区触发

如何在javascript中将日期时间从用户时区转换为EST [重复]

如何在 Python 中将本地时间转换为 GMT 时区

如何在 PHP 中将默认日期设置为波斯日期?

如何在Javascript中将日期转换为其他时区[重复]

apache_conf 在.htaccess文件中将时区设置为PHP的协调世界时(UTC)。