PHP获取IP所在地区

1.获取IP地址的API
新浪的IP地址查询接口:http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json
新浪多地域测试方法:http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=218.192.3.42

搜狐IP地址查询接口(默认GBK):http://pv.sohu.com/cityjson
搜狐IP地址查询接口(可设置编码):http://pv.sohu.com/cityjson?ie=utf-8

淘宝IP地址库API http://ip.taobao.com/service/getIpInfo.php?ip=[ip地址字串]

 

根据访问者ip显示对应地区的特定内容

根据访问者ip,来读ip库或接口获取地区,用该地区做筛选查询

 

纯真IP数据库文件版 http://www.cz88.net/fox/

示例一:

Java代码  

  1. $IpLocation = new IpLocation();  
  2. $client = $IpLocation->getlocation();  
  3. print_r($client);  

 示例二:

Java代码  

  1. header("Content-type: text/html; charset=gbk");   
  2. $IpLocation = new IpLocation('../qqwry/QQWry.Dat');  
  3. $client = $IpLocation->getlocation('115.148.101.72');  
  4. print_r($client);  

相关说明

ShowIP.exe可以验证程序,也可以更新。 此类要求提供纯真IP数据库,附件包里包含有此数据库

 

如果电脑配置不好出现文件太大内存溢出问题,可以将ip库换成MySQL

使用IPLook把QQWry.Dat文件解压到IPData.txt文件,打开IPData.txt文件格式是这样的

    0.0.0.0    0.255.255.255    IANA保留地址    CZ88.NET
    1.0.0.0    1.0.0.255    澳大利亚    CZ88.NET
    1.0.1.0    1.0.3.255    福建省    电信
    1.0.4.0    1.0.7.255    澳大利亚    CZ88.NET

建立ip数据库表

Java代码  

  1. CREATE TABLE `ip` (  
  2. `StartIP` varchar(20) default '',  
  3. `EndIP` varchar(20) default NULL,  
  4. `Country` varchar(30) default NULL,  
  5. `Local` varchar(50) default NULL,  
  6. KEY `IP` USING BTREE (`StartIP`,`EndIP`)  
  7. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;  

 MySQL的导入向导功能把IPData.txt文件的数据导入到ip数据表中

Java代码  

  1. load data local infile 'data.txt'  into 表名  (列名)  

如何在MySQL中对ip比较

Java代码  

  1. select  *  from ip where INET_ATON('119.253.32.42') between INET_ATON(startIp) and INET_ATON(endIp);  
时间: 2024-11-03 00:16:30

PHP获取IP所在地区的相关文章

PHP获取ip对应地区和使用网络类型的方法

 这篇文章主要介绍了PHP获取ip对应地区和使用网络类型的方法,实例分析了php通过调用ip138数据库获取IP及网络类型的技巧,需要的朋友可以参考下     本文实例讲述了PHP获取ip对应地区和使用网络类型的方法.分享给大家供大家参考.具体分析如下: 这里测试的时候因为ip168网站禁止,所以试着在原有代码上修改为ip138数据库的数据调用,代码如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 <?php //原程序有问题,现修

PHP获取ip对应地区和使用网络类型的方法_php技巧

本文实例讲述了PHP获取ip对应地区和使用网络类型的方法.分享给大家供大家参考.具体分析如下: 这里测试的时候因为ip168网站禁止,所以试着在原有代码上修改为ip138数据库的数据调用,代码如下: <?php //原程序有问题,现修改为ip138数据库 /** * 获取IP地区 * Enter description here ... * @param unknown_type $ip */ function GetArea($ip){ $url = "http://www.ip138.

PHP获取IP地址输出为数组程序代码

PHP获取服务器IP地址 用PHP执行ifconfig获得Linux服务器IP并输出为数组,下面是代码:  代码如下 复制代码 <?php function getServerIp(){ //用ifconfig读取服务器IP并输出为数组   $ss = exec('/sbin/ifconfig | sed -n 's/^ *.*addr:\([0-9.]\{7,\}\) .*$/\1/p'',$arr);   return $arr;   } $ips=getServerIp();   fore

解析php根据ip查询所在地区

dat文件,关于ip对应地区的信息文件 qqwry.dat文件 网上自己下载 class类文件,解析qqwry.data文件的IpLocation.php文件 复制代码 代码如下: <?php class IpLocation { /** * @var resource 指针 */ private $fp; /** * 第一条IP记录的偏移地址 * @var int */ private $firstip; /** * 最后一条IP记录的偏移地址 * @var int */ private $l

解析php根据ip查询所在地区(非常有用,赶集网就用到)_php技巧

dat文件,关于ip对应地区的信息文件qqwry.dat文件网上自己下载 class类文件,解析qqwry.data文件的IpLocation.php文件 复制代码 代码如下: <?phpclass IpLocation {    /**    * @var resource 指针    */    private $fp;    /**    * 第一条IP记录的偏移地址    * @var int    */    private $firstip;    /**    * 最后一条IP记录

.net根据ip地址获取当前所在省市以及地区

问题描述 根据ip地址获取当前所在省市以及地区,比如:广东省深圳市南山区(一定要把区获取出来).有人做过这种功能的吗?希望能共享下. 解决方案 解决方案二:有IP数据库自然就能取出来了.解决方案三:没有一切都是空谈解决方案四:http://coolshell.cn/articles/244.html数据库对着查就完了解决方案五:1下个IP库进行判断2调用webservice服务传入IP返回地址解决方案六:网上有这样的调用一下解决方案七:上腾讯的服务,他有这个服务的接口解决方案八:要么自己有数据库

php通过Chianz.com获取IP地址与地区的方法

 这篇文章主要介绍了php通过Chianz.com获取IP地址与地区的方法,是解析IP地址与地区非常实用的技巧,需要的朋友可以参考下     本文实例讲述了php通过Chianz.com获取IP地址与地区的方法.分享给大家供大家参考.具体分析如下: 一个IP获取的结果不是很完善,究其原因是因为ip138的IP解析应对国外的地址时不是很详细,所以又重新写了个用Chianz.com的代码,实例代码如下: 代码如下: <!DOCTYPE html> <html lang="en&qu

php实现根据IP地址获取其所在省市的方法_php实例

根据现有IP地址获取其地理位置(省份,城市等)的方法 function GetIpLookup($ip = ''){ if(empty($ip)){ return '请输入IP地址'; } $res = @file_get_contents('http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=' . $ip); if(empty($res)){ return false; } $jsonMatches = array(

php通过Chianz.com获取IP地址与地区的方法_php技巧

本文实例讲述了php通过Chianz.com获取IP地址与地区的方法.分享给大家供大家参考.具体分析如下: 一个IP获取的结果不是很完善,究其原因是因为ip138的IP解析应对国外的地址时不是很详细,所以又重新写了个用Chianz.com的代码,实例代码如下: 复制代码 代码如下: <!DOCTYPE html>  <html lang="en">  <head>  <title></title>  <meta char