Heim  >  Artikel  >  Backend-Entwicklung  >  PHP根据IP判断地区名信息的示例代码_php技巧

PHP根据IP判断地区名信息的示例代码_php技巧

WBOY
WBOYOriginal
2016-05-17 08:48:33751Durchsuche

看代码

复制代码 代码如下:

header("Content-type: text/html; charset=utf-8");
function getIP(){
if (isset($_SERVER)) {
if (isset($_SERVER[HTTP_X_FORWARDED_FOR])) {
$realip = $_SERVER[HTTP_X_FORWARDED_FOR];
} elseif (isset($_SERVER[HTTP_CLIENT_IP])) {
$realip = $_SERVER[HTTP_CLIENT_IP];
} else {
$realip = $_SERVER[REMOTE_ADDR];
}
} else {
if (getenv("HTTP_X_FORWARDED_FOR")) {
$realip = getenv( "HTTP_X_FORWARDED_FOR");
} elseif (getenv("HTTP_CLIENT_IP")) {
$realip = getenv("HTTP_CLIENT_IP");
} else {
$realip = getenv("REMOTE_ADDR");
}
}
return $realip;
}

$ip = getIP();

// 利用新浪接口根据ip查询所在区域信息
/* $res0 = file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=$ip");
$res0 = json_decode($res0);
print_r($res0);
echo "
"; */

// 利用淘宝接口根据ip查询所在区域信息
$res1 = file_get_contents("http://ip.taobao.com/service/getIpInfo.php?ip=$ip");
$res1 = json_decode($res1);
/* print_r($res1); */

如何读取数据, 看下面。
复制代码 代码如下:

$array = get_object_vars($res1);//赋值给数组
foreach($array as $value){
echo $value->region."
";
echo $value->city."
";
echo $value->ip."
";
}
?>

//或者用对象数据访问 echo $res1->data->city;
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn