我已下载https://github.com/maxmind/GeoIP2-php和数据库http://dev.maxmind.com/geoip/geoip2/geolite2/以捕获网页访问者的时区。
require_once('GeoIp2/vendor/autoload.php');
$reader = new Reader('GeoIp2/GeoLite2-City.mmdb');
$record = $reader->city($_SERVER['REMOTE_ADDR']);
echo $record->location->timeZone;
它与IPv4一起正常工作,但IPv6无法正常工作。输出为空,没有错误。在这里缺少什么?
答案 0 :(得分:1)
并非每个IP地址都与时区相关联。对于地址定位数据更加不稳定的IPv6地址,这尤其是一个问题。鉴于您正在获得记录,我怀疑IP只有没有时区的国家级数据。您可以添加echo json_encode($record);
文件以查看查找中的数据。