PHP Conference Japan 2024

地理位置

添加注释

用户贡献的注释 2 个注释

31
mark at moderndeveloperllc dot com
10 年前
应该注意的是,此扩展现在已被 MaxMind 现在生成的 GeoIP2 API 取代。有一组纯 PHP 类和一个 C 库和扩展,您可以选择安装。代码可以在 MaxMind 的 GitHub 页面上的各种项目中找到: https://github.com/maxmind/
27
webmaster at isag dot melbourne
5 年前
使用 GeoIP2,最简单的方法是

* 获取最新的 GeoIP2 Lite 数据库: https://dev.maxmind.com/geoip/geoip2/geolite2/
* 获取最新的 geoip2.phar: https://github.com/maxmind/GeoIP2-php/releases

<?php
require_once("geoip2.phar");
use
GeoIp2\Database\Reader;
// 城市数据库
$reader = new Reader('/path/to/GeoLite2-City.mmdb');
$record = $reader->city($_SERVER['REMOTE_ADDR']);
// 或用于国家数据库
// $reader = new Reader('/path/to/GeoLite2-Country.mmdb');
// $record = $reader->country($_SERVER['REMOTE_ADDR']);
print($record->country->isoCode . "\n");
print(
$record->country->name . "\n");
print(
$record->country->names['zh-CN'] . "\n");
print(
$record->mostSpecificSubdivision->name . "\n");
print(
$record->mostSpecificSubdivision->isoCode . "\n");
print(
$record->city->name . "\n");
print(
$record->postal->code . "\n");
print(
$record->location->latitude . "\n");
print(
$record->location->longitude . "\n");
$>
To Top