php - 如何在 PHP 中通过 IP 地址获取时区

标签 php time timezone ip

<分区>

我想通过 PHP 中的 IP 地址获取时区。实际上,我有一个将在客户机上运行的应用程序。我有客户端机器的 IP 地址。但是我无法获得每台客户端计算机的时区。

最佳答案

$ip = "189.240.194.147";  //$_SERVER['REMOTE_ADDR']
$ipInfo = file_get_contents('http://ip-api.com/json/' . $ip);
$ipInfo = json_decode($ipInfo);
$timezone = $ipInfo->timezone;
date_default_timezone_set($timezone);
echo date_default_timezone_get();
echo date('Y/m/d H:i:s');

有时它在本地服务器上不起作用,所以请在服务器上尝试。

编辑:此数据来自 ip-api.com,只要您不超过 每分钟 45 个请求并且< strong>不用于商业用途。见他们的TOS ,而不是一页。

关于php - 如何在 PHP 中通过 IP 地址获取时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/743505/

相关文章:

php - Laravel 使用函数查询失败

php - 从 mysql 数组返回 True/False

PHP:通过单击的链接在 URL 中传递变量

r - 根据开始和停止时间计算每天的分钟数

iphone - 如何控制 UISlider Value Changed-events 频率?

database - 如何更改特定于一个 SID 的 Oracle 数据库中的时区,系统配置了许多 DB SID

datetime - 在Powershell中创建其他时区的datetime对象

php - SQL 语法错误。 Mysql无法插入数据

javascript - 来自两个字段的 Jquery 时间差(以小时为单位)

mysql - 在 MySQL 中计算时区的偏移量