首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >计算子网ip2long的大整数范围

计算子网ip2long的大整数范围
EN

Stack Overflow用户
提问于 2021-11-10 14:46:21
回答 1查看 21关注 0票数 0

我正在尝试确定网站访问者是否来自欧盟国家,如果是的话,根据他们的法律向他们展示一个cookie同意横幅。

我下载了一个表,列出了所有欧盟国家的IPv4 (即: 1.178.224.0/19),并将其上传到mySQL。表中有107,000行。我可以使用$_SERVER‘’REMOTE_ADDR‘获取用户IP。我正在寻找最简单和最快的方法来检查使用PHP,如果用户的ip地址落在范围内。

一种想法是在一个表中创建2列,其中包含每个IPv4的起始和结束长整数。该网站将使用ip2long()将用户的IP地址更改为一个长整数,然后查看它是否落入任何IPv4的2列范围内。不确定这是否可能。如果这是个好主意,那么如何获得IPv4地址的起始和结束长整数呢?

我找到了几个解决方案来查看IP是否在我的表中列出的范围内(即: 1.178.224.0/19),但是由于有107,000行,这可能需要一段时间才能处理。我正在寻找一个快速运行的解决方案,这样就不会拖慢每个不在欧盟国家的用户的速度。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-10 15:07:07

你可以使用免费的在线服务,而不是自己尝试实现地理定位。您可以非常快速地实现此功能。以此服务为例:

http://geolocation-db.com/documentation

我会使用Javascript,而不是PHP,只有当用户在欧盟国家时,您才会弹出cookie同意横幅。

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

https://stackoverflow.com/questions/69915310

复制
相关文章

相似问题

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