我使用了GeoIp,带有纯PHP代码。。但是GeoIp2变成了同名的等等,此时此刻我不知道如何使用它。。我已经下载了GeoLite2-Country.mmdb
,现在如何获得IP的国家名称,即123.123.123.123
。
p.s.我没有GIT/COMPOSER等。
我是如何做到的:比如说,创建一个名为"My_folder"的文件夹,并在其中:
1)创建文件夹GeoIp2
并将此"SRC"文件夹的内容放入其中(下载)。
2)放入MaxMind
文件夹(从"SRC"文件夹下载)。
3)位置,即GeoLite2-Country.mmdb
(下载)。
然后,在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 GeoIp2DatabaseReader;
//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 ( GeoIp2ExceptionAddressNotFoundException $e ){ $country_name = 'not_found'; }
echo $country_name;
// RESULTS -------------- > China
p.s.其他示例见:https://github.com/maxmind/GeoIP2-php