<?php
/**
* 基于淘宝的ipAPI 根据ip地址 返回所在地
* @author L.D.B
* 2012/09/12
*/
header("Content-type:text/html; charset=utf-8");
$ip='61.183.248.38';
$url='http://ip.taobao.com/service/getIpInfo.php?ip='.$ip;
var_dump(curl_rpc($url));
/**
* file_get_contents 获取信息
* @param $url
*/
function get_area_file($url){
if(empty($url)){
return false;
}
$file=file_get_contents($url);
return json_decode($file,true);
}
function curl_rpc($url, $request='', $limit = 0, $timeout = 1){
if (!$url)
die('url is null');
$urlarr = parse_url($url);
$host = $urlarr['host'];
$path = $urlarr['path'];
$port = !empty($urlarr['port']) ? $urlarr['port'] : 80;
$len = strlen($request);
$hander = "POST $path HTTP/1.1\r\n";
$hander .= "Host: $host:$port\r\n";
$hander .= "Content-type: application/json\r\n";
$hander .= "Connection: Close\r\n";
$hander .= "Content-Length: $len\r\n";
$hander .= "\r\n";
$hander .= $request . "\r\n";
$handerarr[0] = $hander;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url); //The URL to fetch.
curl_setopt($ch, CURLOPT_HEADER, 0); //TRUE to include the header in the output.
curl_setopt($ch, CURLOPT_HTTPHEADER, $handerarr); //An array of HTTP header fields to set.
curl_setopt($ch, CURLOPT_POST, 1); //TRUE to do a regular HTTP POST
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //TRUE to return the transfer as a string of the return value of curl_exec() instead of outputting it out directly.
curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1); //TRUE to return the raw output
curl_setopt($ch, CURLOPT_TIMEOUT, $timeout); //The maximum number of seconds to allow CURL functions to execute.
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
/**
* 获取当前ip地址
*/
function get_ip(){
if (getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {
$ip = getenv('HTTP_CLIENT_IP');
} elseif (getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) {
$ip = getenv('HTTP_X_FORWARDED_FOR');
} elseif (getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {
$ip = getenv('REMOTE_ADDR');
} elseif (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {
$ip = $_SERVER['REMOTE_ADDR'];
}
return preg_match('/[\d\.]{7,15}/', $ip, $matches) ? $matches [0] : '';
}
分享到:
相关推荐
本文将详细讨论如何根据IP地址获取其所在的区域、运营商以及国家等信息,特别是在Java环境中利用淘宝IP地址库进行此类操作。 首先,IP地址是互联网上设备的唯一标识,它分为IPv4和IPv6两种格式。在IPv4中,IP地址由...
本篇将详细讲解如何在Java中根据IP地址获取国家和地区信息,并介绍一个附带的IP库。 首先,我们需要明白IP地址与地理位置之间的关联是通过IP库来建立的。IP库通常包含大量的IP段与对应国家、地区的映射关系,以便...
这里以`MaxMind GeoIP2`为例,它提供了数据库和API接口,可以快速地根据IP地址查询到国家、地区、城市等信息。 首先,安装`MaxMind GeoIP2`库及其依赖。在SpringBoot项目中,可以通过Maven或Gradle添加依赖。例如,...
在Java编程中,我们有时需要获取一个IP地址所对应的具体地理位置,例如省份、城市等信息。这通常需要借助特定的IP数据库,如“纯真IP数据库”(QQWry.Dat),它包含了大量IP地址及其地理位置的映射关系。本文将详细...
在IT行业中,获取IP地址对应的区域信息是一项常见的需求,特别是在网络监控、数据分析或者地理位置服务等领域。这个主题主要涉及了如何使用C语言来实现IP到地理位置的转换,特别是针对标题和描述中提到的“搜索IP...
1、location.html 在浏览器中打开页面,即可获取您当前的ip地址,和所在城市,以及城市地理位置编码。(以国家统计局为准) ... 放在web项目中,可获取访问用户的ip地址,所在城市,和所在城市区域编码。
通过地址获取经纬度,c.通过外网IP获取地址详细信息等;(具体信息有:经纬度,ISP,区域编码,区域名称,城市名称,省份名称) 2.淘宝API测试示例是通过IP获取地址,同上,但是没有经纬度的; 3.腾讯qqwry.dat是支持...
在互联网技术中,根据IP地址获取用户的地理位置是一个常见的需求。例如,网站可能需要根据访问者的IP来提供地区性的服务或内容。Java作为广泛使用的编程语言,提供了多种方法实现通过IP地址查询地理位置信息。 首先...
ARP(Address Resolution Protocol,地址解析协议)是根据网络层的 IP 地址来获取数据链路层的 MAC 地址的一个关键协议。 在以太网环境中,IP 地址用于标识网络中的节点,而 MAC 地址则是物理网络接口的唯一标识。...
在IT行业中,我们经常需要根据用户的IP地址获取其所在的城市信息,这在提供个性化服务、数据分析、网络安全等领域具有重要作用。Java作为一种广泛使用的编程语言,提供了多种方法来实现这个功能。这篇博客“java根据...
在实际应用中,IP地址信息的获取往往与网络编程、数据分析、网络安全紧密相关。例如,在网络爬虫中,我们需要知道目标网站的服务器位置,以便选择最佳的代理IP;在网络安全监控中,分析IP来源可以识别潜在的攻击行为...
标题中的“IP地址查询区域源代码”指的是一个程序或服务,它允许用户通过输入IP地址来获取该IP对应的位置信息。这种技术在互联网上广泛应用于网站统计、网络安全分析以及个性化用户体验等多个领域。IP地址通常分为...
在C# .NET编程环境中,获取用户访问者的IP地址并进一步确定其所在地区是一项常见的需求,这在构建网站、分析用户行为或者实现地理定位服务时非常有用。本教程将指导初学者如何通过C# .NET实现这一功能,利用QQ纯真IP...
总的来说,这个Python脚本项目提供了从IP地址获取地理信息的功能,这涉及到网络编程、API调用、数据解析以及可能的数据库操作等多方面技术。开发者需要具备Python基础、网络知识以及对IP定位服务的理解,才能成功...
在Java编程语言中,获取IP地址是一项常见的任务,特别是在网络编程和服务器开发中。这个程序虽然界面简单,但核心功能强大,它能够帮助开发者获取指定域名对应的IP地址。以下是关于这个话题的一些详细知识点: 1. *...
获取到IP地址后,我们可以使用GeoIP库或类似服务来解析IP地址并获取地理位置信息,包括对应的国家代码。 接下来,我们需要在Magento的配置中设置各国与对应货币的关联。这通常在系统设置的“配置”>“General”>...
归属地则指IP地址所属的地理区域,包括国家、地区、城市等信息。获取IP地址的归属地有助于了解用户的位置,对服务进行地域定向,或者进行网络流量分析。 项目中的接口方法可能是通过调用第三方API或者使用公开的IP...
通过这种方式,PHP可以用来获取并显示用户的IP地址所对应的城市和区域信息。当然,实际的`IpLocation.class.php` 和`UTFWry.dat` 文件可能更为复杂,包含更多的错误处理和优化。同时,需要注意的是,IP到地理位置的...
根据IP地址获取详细的地域信息 获取指定IP的区域位置 java代码