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

  看代码

  

复制代码 代码如下:

  <?php

  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 "<br />"; */

  // 利用淘宝接口根据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."<br />";

  echo $value->city."<br />";

  echo $value->ip."<br />";

  }

  ?>

  //或者用对象数据访问 echo $res1->data->city;