Maxmind GeoIP2教程(操作方法)?

时间:2016-07-26 21:58:39

标签: maxmind geoip2

我使用GeoIp,使用纯PHP代码.. 但是GeoIp2变成了命名空间等等,此时我无法找到如何使用它...我已经下载了GeoLite2-Country.mmdb,现在如何获取IP的国家名称,即123.123.123.123

P.S。我没有GIT / COMPOSER等等。

1 个答案:

答案 0 :(得分:4)

我是如何做到的:让我们说,创建一个名为" My_Folder "的文件夹。在里面:

1)创建文件夹 GeoIp2 并将其内容添加到" SRC"文件夹(download)。
2)放置 MaxMind 文件夹(download,来自" SRC"文件夹)。
3)地点,即 GeoLite2-Country.mmdb download)。

然后,在 My_Folder 中创建一个example.php文件并输入以下代码:

$user_ip='123.123.123.123';

spl_autoload_register('func888'); function func888($class){ include_once(str_replace(array('/','\\'), DIRECTORY_SEPARATOR, dirname(__file__)."/$class.php")) ;}
use GeoIp2\Database\Reader; 
//you can do it for "city" too.. just everywhere change phrase "country" with "city".
try{
    $reader = new Reader(dirname(__file__)."/GeoLite2-Country.mmdb");
    $record = $reader->country($user_ip);
    $reader->close();
    $country_name =  $record->raw['country']['names']['en'];
} catch ( GeoIp2\Exception\AddressNotFoundException $e ){    $country_name = 'not_found';  }

echo $country_name;
// RESULTS -------------- > China

P.S。在https://github.com/maxmind/GeoIP2-php

找到的其他示例