当前位置:首页 > PHP教程 > php高级应用 > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2020-10-12 15:06:00 浏览: 评论:0 

这篇文章主要介绍了PHP根据IP判断地区名信息的方法,需要的朋友可以参考下,看代码:

  1. <?php  
  2. header("Content-type: text/html; charset=utf-8");  
  3. function getIP(){  
  4. if (isset($_SERVER)) {  
  5. if (isset($_SERVER[HTTP_X_FORWARDED_FOR])) {  
  6. $realip = $_SERVER[HTTP_X_FORWARDED_FOR];  
  7. elseif (isset($_SERVER[HTTP_CLIENT_IP])) {  
  8. $realip = $_SERVER[HTTP_CLIENT_IP];  
  9. else {  
  10. $realip = $_SERVER[REMOTE_ADDR];  
  11. }  
  12. else {  
  13. if (getenv("HTTP_X_FORWARDED_FOR")) {  
  14. $realip = getenv"HTTP_X_FORWARDED_FOR");  
  15. elseif (getenv("HTTP_CLIENT_IP")) {  
  16. $realip = getenv("HTTP_CLIENT_IP");  
  17. else {  
  18. $realip = getenv("REMOTE_ADDR");  
  19. }  
  20. }  
  21. return $realip;  
  22. }  
  23.  
  24. $ip = getIP();  
  25.  
  26. // 利用新浪接口根据ip查询所在区域信息  
  27. /* $res0 = file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=$ip");  
  28. $res0 = json_decode($res0);  
  29. print_r($res0);  
  30. echo "<br />"; */  
  31. //phpfensi.com 
  32. // 利用淘宝接口根据ip查询所在区域信息  
  33. $res1 = file_get_contents("http://ip.taobao.com/service/getIpInfo.php?ip=$ip");  
  34. $res1 = json_decode($res1);  
  35. /* print_r($res1); */  

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

  1. $array = get_object_vars($res1);//赋值给数组  
  2. foreach($array as $value){  
  3. echo $value->region."<br />";  
  4. echo $value->city."<br />";  
  5. echo $value->ip."<br />";  
  6. }  

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

Tags: IP判断地区名

分享到: