首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Maxmind Geolitecity数据库中的IP地址表示

Maxmind Geolitecity数据库中的IP地址表示
EN

Stack Overflow用户
提问于 2011-07-07 16:57:44
回答 4查看 1.1K关注 0票数 1

我在Mysql数据库中有Maxmind Geolitecity数据库。

我可以看到像startIpNumendIpNum这样的字段。

这些字段的值如下:startIpNum为16777216,endIpNum`为16777471

我的ip是115.184.126.186,如何转换我的ip以匹配startIpNumendIpNum

EN

回答 4

Stack Overflow用户

发布于 2011-07-07 17:16:45

按照lmz的建议使用inet_aton(),或者在php中使用:

http://php.net/manual/en/function.ip2long.php

注意,这个函数返回一个有符号整数,意思是从−2,147,483,648到2,147,483,647,我认为maxmind geoip数据库使用无符号整数(0-4,294,967,295?)因此需要添加2,147,483,647 (2^31-1)

票数 2
EN

Stack Overflow用户

发布于 2011-07-07 17:00:53

尝试MySQL中的inet_aton函数。

票数 1
EN

Stack Overflow用户

发布于 2011-07-07 17:08:32

尝试如下所示:

代码语言:javascript
复制
<?php 
 $ipadd="115.184.126.186";
 $ips = explode(".",$ipadd);
 $x=($ips[3] + $ips[2] * 256 + $ips[1] * 256 * 256 + $ips[0] * 256 * 256 * 256);
 echo $x;
?>

只需将此函数修改为函数即可。

here是代码的结果

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6608120

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档