ip与16进制互转

本文介绍了如何在Piwik中处理IP地址,IP地址在数据库中以16进制形式存储。PHP使用ip2long()和long2ip()函数进行转换,MySQL提供inet_ntoa()和INET_ATON()函数,而Oracle和Java也有相应的转换方法。
摘要由CSDN通过智能技术生成

piwik取ip:ip与16进制互转


装了一个piwik做站点分析,类似自建的站长统计。想提取访客ip做一些应用,发现不是直接存的ip。

1、存储

1.1 ip在数据库中以16进制存储

网络地址: 192.168.33.123
每一个值最大不会越过255,也就是十六进制的FF,两个Byte刚好表示的最大值是255,
这样子,就可以用一个32位的整形来保存这个地址
192 168 33 123
1100 0000 1010 1000 0010 0001 0111 1011
把这些二进制合在一起就是32位的数了
11000000101010000010000101111011
十进制为
3232244091

1.2 php

piwik是php语言,php中有ip2long(),long2ip()2个函数实现ip与进制互转
存到数据库中就是16进制的短地址了。

2、mysql

mysql内建函数支持
SELECT inet_ntoa(3520061481); –> 209.207.224.41
SELECT INET_ATON(‘209.207.224.41’); –> 3520061481

SELECT inet_ntoa(conv(hex(location_ip), 16, 10)) as ip, idvisitor 
FROM piwik_log_visit;

3、oracle

piwik数据库用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值