#mk geoip
#cd geoip/
#wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
#gzip -d GeoIP.dat.gz
3)简单使用:#wget http://www.maxmind.com/download/geoip/api/php/php-latest.tar.gz
#unzip php-latest.tar.gz
执行效果如下:<?php
//引入库文件
include("geoip-api-php-1.14/src/geoip.inc");
//通过ip返回国家城市信息
function getCountryByIp($ip=""){
//如果不传IP地址,那么默认取当前IP地址
if($ip=="") $ip=get_client_ip();
//指定IP地址库
$gi = geoip_open("geoip-api-php-1.14/GeoIP.dat", GEOIP_STANDARD);
if(strstr($ip,":")){
//IPV6处理
$country_code = geoip_country_code_by_addr_v6($gi,$ip);
$country_name = geoip_country_name_by_addr_v6($gi,$ip);
}else{
//IPV4处理
$country_code = geoip_country_code_by_addr($gi,$ip);
$country_name = geoip_country_name_by_addr($gi,$ip);
}
geoip_close($gi);
return array("country_code" => $country_code, "country_name" => $country_name);
}
//获取当前登陆用户IP
function get_client_ip(){
if ($_SERVER['REMOTE_ADDR']) {
$cip = $_SERVER['REMOTE_ADDR'];
}elseif(getenv("REMOTE_ADDR")) {
$cip = getenv("REMOTE_ADDR");
} elseif (getenv("HTTP_CLIENT_IP")) {
$cip = getenv("HTTP_CLIENT_IP");
} else {
$cip = "unknown";
}
return $cip;
}
//打印国家城市信息
print_r(getCountryByIp("8.8.8.8"));
?>
评论