本文主要和大家分享php如何根据IP地址获取所在城市,本文主要以代码的形式,希望能帮助到大家。<?php

header('Content-Type:text/html;Charset=utf-8');

function GetIp(){

$realip = '';

$unknown = 'unknown';

if (isset($_SERVER)){

if(isset($_SERVER['HTTP_X_FORWARDED_FOR']) && !empty($_SERVER['HTTP_X_FORWARDED_FOR']) && strcasecmp($_SERVER['HTTP_X_FORWARDED_FOR'], $unknown)){

$arr = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);

foreach($arr as $ip){

$ip = trim($ip);

if ($ip != 'unknown'){

$realip = $ip;

break;

}

}

}else if(isset($_SERVER['HTTP_CLIENT_IP']) && !empty($_SERVER['HTTP_CLIENT_IP']) && strcasecmp($_SERVER['HTTP_CLIENT_IP'], $unknown)){

$realip = $_SERVER['HTTP_CLIENT_IP'];

}else if(isset($_SERVER['REMOTE_ADDR']) && !empty($_SERVER['REMOTE_ADDR']) && strcasecmp($_SERVER['REMOTE_ADDR'], $unknown)){

$realip = $_SERVER['REMOTE_ADDR'];

}else{

$realip = $unknown;

}

}else{

if(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), $unknown)){

$realip = getenv("HTTP_X_FORWARDED_FOR");

}else if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), $unknown)){

$realip = getenv("HTTP_CLIENT_IP");

}else if(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), $unknown)){

$realip = getenv("REMOTE_ADDR");

}else{

$realip = $unknown;

}

}

$realip = preg_match("/[\d\.]{7,15}/", $realip, $matches) ? $matches[0] : $unknown;

return $realip;

}

function GetIpLookup($ip = ''){

if(empty($ip)){

$ip = GetIp();

}

$res = @file_get_contents('http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=' . $ip);

if(empty($res)){ return false; }

$jsonMatches = array();

preg_match('#\{.+?\}#', $res, $jsonMatches);

if(!isset($jsonMatches[0])){ return false; }

$json = json_decode($jsonMatches[0], true);

if(isset($json['ret']) && $json['ret'] == 1){

$json['ip'] = $ip;

unset($json['ret']);

}else{

return false;

}

return $json;

}

$ipInfos = GetIpLookup('123.125.114.144'); //baidu.com IP鍦板潃

var_dump($ipInfos);

?>

相关推荐:

php ip 城市,php如何根据IP地址获取所在城市相关推荐

  1. js通过IP地址获取所在城市

    话不多说,直接贴代码! 将这段代码运行一下就OK了: <html xmlns="http://www.w3.org/1999/xhtml"> <head runa ...

  2. 获取地区html代码,根据ip地址获取所在城市信息(省市县)代码

    [实例简介] [实例截图] [核心代码] 获取ip地址所在城市 var showIP = function(ip, remote_ip_info ){ if(remote_ip_info['ret'] ...

  3. 根据ip获取所在城市 php,PHP:根据IP地址获取所在城市

    欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 if ( $useripFlag == chr( 2 ) ) { $AddrSeek = fread( $fd, 3 ): ...

  4. 6种根据IP地址获取相应城市信息的接口

    发这篇文章的最主要的目的就是给大家分享一个 免费快捷根据IP地址获取相应城市信息的接口--腾讯接口 在找到个腾讯接口之前,我试也用了很多接口,比如:淘宝,新浪等,下面挨个介绍 (ps:$ip是IP地址 ...

  5. java 根据ip地址获取城市_Java 根据ip地址获取当前城市

    maxmind免费数据库maven位置:用来获取所要用的数据库文件(GeoLite2-City.mmdb) org.elasticsearch geolite2-databases 20151029 ...

  6. C# 解析百度天气数据,Rss解析百度新闻以及根据IP获取所在城市

    接口地址:http://api.map.baidu.com/telematics/v3/weather?location=上海&output=json&ak=hXWAgbsCC9UTk ...

  7. js获取所在城市及IP

    最简单的方式获取所在城市 1.引入js: 直接在浏览器访问以下试试: http://pv.sohu.com/cityjson?ie=utf-8 2.取值: var ctiyName=returnCit ...

  8. JAVA根据IP地址获取省份城市和经纬度(可获取国家名称 淘宝高德API如果是国外IP获取到的为空)

    所需jar包maven地址: <!-- 根据ip获取位置 --><dependency><groupId>com.maxmind.geoip2</groupI ...

  9. js根据ip地址获取省份城市的方法

    今天发现新浪的IP地址查询接口已经访问不了,也就是说不能用了,然后重新试了其他的,找到搜狐的ip地址可以用 不能用 新浪的IP地址查询接口 http://int.dpool.sina.com.cn/i ...

最新文章

  1. Program type already present: android.support.v4.app.BackStackRecord$Op
  2. C#简单实现读取txt文本文件并分页存储到数组
  3. Linux内核源码分析方法
  4. Okhttp同步请求源码分析
  5. 我是如何学习写一个操作系统(三):操作系统的启动之保护模式
  6. Java LinkedHashMap的实现原理详解
  7. reids的持久化 RDB和AOF
  8. python mysql python.h_MySQLdb/_mysql.c:38:20: fatal error: Python.h: No such file or directory
  9. matches php,PHP 正则表达式 推荐
  10. Play 2.0 用户指南 - 表单提交和验证 --针对Scala开发者
  11. 电子签名服务和云平台整合管理合同
  12. 《数据结构》实验报告(一)顺序表基本操作
  13. 《工业设计史》第十一章:走向多元化
  14. 微信 考勤 php,JavaScript_微信企业号开发之微信考勤Cookies的使用,在上篇文章给大家介绍了微信 - phpStudy...
  15. 华为:鸿蒙 Harmony OS 明年将正式登陆欧洲
  16. 数据留存的计算-sql boy必备
  17. oracle计算timestamp差,Oracle 计算timestamp和date类型的时间差
  18. PS后期合成深海海底水下人像摄影效果
  19. Docker微容器之Alpine Linux 初体验
  20. 游戏系统及开发相关概述(上)

热门文章

  1. PyQt5常用模块介绍
  2. 浅析大数据时代的网络舆情监测及服务
  3. Js 调用 WebService心得总结
  4. IT男装逼利器:如何像黑客一样聊天 Mojo-Webqq
  5. 解决zabbix_agent on Zabbix Server is unreachable fro 5 minutes不能正常启动的问题
  6. 使用VFW开发视频采集软件
  7. html偷图片,ASP小偷偷取地址并生成html-ASP教程,ASP应用
  8. Win10《芒果TV》商店内测版更新至v3.1.6:率先支持Xbox One平台 - 参与反馈,赢取VIP奖励...
  9. 《伟大的博弈》书中的精髓:华尔街是如何从一条小街,一步步发展为世界金融中心的。
  10. QSMC项目经验 C#控件用法简介