如何在 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 中将默认时区设置为用户的本地时区? [复制]的主要内容,如果未能解决你的问题,请参考以下文章