千家信息网

怎么将IP地址转换为整型数字

发表于:2024-12-12 作者:千家信息网编辑
千家信息网最后更新 2024年12月12日,这篇文章主要介绍"怎么将IP地址转换为整型数字",在日常操作中,相信很多人在怎么将IP地址转换为整型数字问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"怎么将IP地址转换
千家信息网最后更新 2024年12月12日怎么将IP地址转换为整型数字

这篇文章主要介绍"怎么将IP地址转换为整型数字",在日常操作中,相信很多人在怎么将IP地址转换为整型数字问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"怎么将IP地址转换为整型数字"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

【转换原理】:假设IP为:w.x.y.z,则IP地址转为整型数字的计算公式为:intIP = 256*256*256*w + 256*256*x + 256*y + z

【PHP的互转】:PHP的转换方式比较简单,它内置了两个函数
int ip2long ( string $ip_address )和 string long2ip ( string $proper_address )
可以直接调用使用~

【Asp的互转】:自定义函数如下,
'.-----------------------------------------------------------.
'| describtion: 将IP转换为int型数字 |
'| Authors: abandonship(http://jb51.net) |
'~-----------------------------------------------------------~
Function IP2Num(ByVal strIP)
Dim nIP
Dim nIndex
Dim arrIP
arrIP = Split(strIP, ".", 4)
For nIndex = 0 To 3
If Not nIndex = 3 Then
arrIP(nIndex) = arrIP(nIndex) * (256 ^ (3 - nIndex))
End If
nIP = nIP + arrIP(nIndex)
Next
IP2Num = nIP
End Function
'.-----------------------------------------------------------.
'| describtion: 将int型数字转换为IP |
'| Authors: abandonship(http://jb51.net) |
'~-----------------------------------------------------------~
Function Num2IP(ByVal nIP)
Dim strIP
Dim nTemp
Dim nIndex
For nIndex = 3 To 0 Step -1
nTemp = Int(nIP / (256 ^ nIndex))
strIP = strIP & nTemp & "."
nIP = nIP - (nTemp * (256 ^ nIndex))
Next
strIP = Left(strIP, Len(strIP) - 1)
Num2IP = strIP
End Function

【MsSQL的互转】:自定义函数如下,
/***************************************************************
* 将IP转换为int型数字 |
* Code CreateBy abandonship(http://jb51.net) |
**************************************************************/
CREATE FUNCTION [dbo].[ipToInt](
@strIp varchar(15)
)RETURNS bigint
AS
BEGIN
declare @nIp bigint
set @nIp = 0
select
@nIp = @nIp + LEFT( @strIp, charindex('.',@strIp+'.')-1)*Id
from(
select Id = cast(1*256*256*256 as bigint)
union all select 1*256*256
union all select 1*256
union all select 1
) as T
return (@nIp)
END

/***************************************************************
* 将int型数字转换为IP |
* Code CreateBy abandonship(http://jb51.net) |
**************************************************************/
CREATE FUNCTION [dbo].[intToIP](
@nIp bigint
)RETURNS varchar(15)
As
BEGIN
declare @strIp varchar(15)
set @strIp = ''
select
@strIp = @strIp +'.'+ cast(@nIp/ID as varchar), @nIp = @nIp%ID
from(
select ID = cast(1*256*256*256 as bigint)
union all select 1*256*256
union all select 1*256
union all select 1
) as T
return(stuff(@strIp,1,1,''))
END

【MySQL的互转】:相对于MsSQL来说MySQL的转换方式比较简单,它和PHP一样也内置了两个函数
IP转为整型: select INET_ATON (IP地址) 和 整型转为IP: select INET_NTOA ( IP的整型数值 )
可以直接调用使用~

到此,关于"怎么将IP地址转换为整型数字"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

数字 地址 函数 学习 两个 方式 更多 帮助 实用 接下来 公式 原理 数值 文章 方法 理论 知识 篇文章 网站 资料 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 有彩图的计算机网络技术书籍 网络安全自查查什么 国家网络安全法什么时候实行 拓力软件开发公司福州电话 数据库的查询怎么在前端实现 安徽网络安全管理需要体测吗 宿迁企业软件开发费用是多少 栾川软件开发哪家好 水星无线路由无线打印服务器 电大计算机网络安全技术考试 窗体应用程序与sql数据库结合 贵州网络软件开发定制费用是多少 公司网络管理员网络安全责任书 软件开发项目经理怎么考 四川pdu服务器专用电源哪家好 java软件开发工作经历 房地产网络安全培训 北京地铁视频软件开发 微软数据库安装方法 阿里云数据库技术 db2数据库hexto 网络技术服务合同金额 多规合一数据库建设 revit软件开发分析 建模软件开发怎么选 sql数据库怎么显示颜色 南京手机软件开发平台 计算机怎么提示网络安全性 服务器cc防护解决方案 数据库课题设计选题和答案
0