加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 如何在美国通过IP地址获取时区?

发布时间:2020-12-13 16:17:33 所属栏目:PHP教程 来源:网络整理
导读:在例子中, 我有来自美国的IP地址. 我正在使用这个功能: $timeZone = DateTimeZone::listIdentifiers(DateTimeZone::PER_COUNTRY,"US"); 获得位置. 我得到一个数组: 0 = string 'America/Adak' 1 = string 'America/Anchorage' 2 = string 'America/Boise'
在例子中,
我有来自美国的IP地址.
我正在使用这个功能:

$timeZone = DateTimeZone::listIdentifiers(DateTimeZone::PER_COUNTRY,"US");

获得位置.
我得到一个数组:

0 => string 'America/Adak'   
1 => string 'America/Anchorage'  
2 => string 'America/Boise'

我如何从IP地址知道我需要的位置是什么?

谢谢,

解决方法

不幸的是,没有简单的方法来通过ip地址来计算时区,特别是如果你使用共享主机.

但是,如果你可以安装GeoIP extension,你可以让它像这样工作:

$region = geoip_region_by_name($_SERVER['REMOTE_ADDR']);
$timezone = geoip_time_zone_by_country_and_region($region['country_code'],$region['region']);

了解更多:

> geoip_time_zone_by_country_and_region
> geoip_region_by_name

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读