验证IP属于国内还是国外的PHP类
时间:2009-10-10
来源:互联网
唉, 被17楼的大哥, 说得一无是处了, 结贴
当没发过总可以了吧?

Navigation_01.gif (927 Bytes)
作者: kupe 发布时间: 2009-10-10
222.180.192.12 在国外
作者: 0hudu 发布时间: 2009-10-11
康云川
哈哈, 感谢 康云川 朋友的回复, 经我仔细检查后, 发现并且是IP库的问题, 现在已经修正, 原因是 ip2long 这个函数
简单说明一下: 同样下面一段代码
echo $ip = '222.201.192.0';
echo "<br>";
echo $ip2 = ip2long('222.201.192.0');
echo "<br>";
echo $ip3 = sprintf('%u', ip2long('222.201.192.0'));
echo "<br>";
在WIN系统(本人的开发环境) 和演示系统 (LINUX) 得出不同的结果
WIN结果:
222.201.192.0
-557203456
LINUX结果:
222.201.192.0
3737763840
也就是 同样的函数,在WIN下返回的是负数, 而LINUX下返回的是正数
解决办法:
大家都返回正数即可
如:将代码:
$ip2 = ip2long('222.201.192.0');
改成: $ip2 = sprintf('%u', ip2long('222.201.192.0'));
查了一下手册, 手册上也有说明处理方法:
[php]Because PHP's integer type is signed, and many IP addresses will result in negative integers, you need to use the "%u" formatter of [url=mk:@MSITStore:E:\手册\PHP5手册php_manual_zh.chm::/fancy/function.sprintf.html]sprintf()[/url] or [url=mk:@MSITStore:E:\手册\PHP5手册php_manual_zh.chm::/fancy/function.printf.html]printf()[/url] to get the string representation of the unsigned IP address. [/php]
最后再次感谢 楼上的朋友, 让我修正了一个BUG, 欢迎各位朋友测试各种各样的IP地址进行验证 :)
作者: 康云川 发布时间: 2009-10-12
作者: kupe 发布时间: 2009-10-12
作者: 温柔的大海 发布时间: 2009-10-13
作者: index 发布时间: 2009-10-15
作者: sinopf 发布时间: 2009-10-16
sinopf 发表于 2009-10-16 08:45
他是大而全,
我是小而精,就实现一个功能: 就是判断您的IP 是属于 国内 还是 国外
作者: 0058 发布时间: 2009-10-17
0058 发表于 2009-10-17 08:24
不开源的原因: 这功能比较单一,高手不用看我的代码也能搞出来
一般新手看这个也没什么用。
有用的一般是当客户有 限制或判断国内,国外IP要求时,才用得上 :)
作者: kupe 发布时间: 2009-10-17
作者: kupe 发布时间: 2009-10-17
作者: ailla 发布时间: 2009-10-18
作者: xiaobai 发布时间: 2009-10-31
作者: xyfxh 发布时间: 2009-11-04
作者: mangoing 发布时间: 2009-11-13
作者: sinnett 发布时间: 2009-11-13
我放出这个程序个反编码后的代码,需要的可以直接下载。
我反编码这个文件的原因很简单,不是因为我需要,而是对楼主不开源的原因很感兴趣,一下为楼主的原话:
代码其实是半开源, 如果哪位有用,就可以直接使用的, 调用方法我都有说明了
不开源的原因: 这功能比较单一,高手不用看我的代码也能搞出来
一般新手看这个也没什么用。
有用的一般是当客户有 限制或判断国内,国外IP要求时,才用得上 :)

而且,我建议,以后PHP China原创版不要再发不开源的代码了,发代码的意义本来是供大家共同学习研究的,同时也可以通过大家来发现代码中的不足。
但是某些人出于某种目的,老是爱发不开源的代码,还美其名曰供大家使用,但是我认为无论是高手还是新手,都不愿意使用别人现成的代码。
代码有点长,我就不贴了,都在附件里,需要的自己下载吧。

作者: coolphp 发布时间: 2009-11-21
作者: axpwx 发布时间: 2009-11-24
作者: mailangel123 发布时间: 2009-11-26

作者: taoyuyin 发布时间: 2009-11-27
哈哈, N久不来这论坛了, 朋友还原的不错, 一模一样, 很强
作者: 兵马俑 发布时间: 2009-11-28
作者: kupe 发布时间: 2009-12-24
作者: mailangel123 发布时间: 2009-12-25
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28