PHP根据IP判断地区名信息的示例代码_PHP教程
程序员文章站
2024-02-07 17:12:34
...
看代码
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;
复制代码 代码如下:
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;
下一篇: 请假php大家日常都用不用异常处理