ip2long

(PHP 4, PHP 5, PHP 7)

ip2long将 IPV4 的字符串互联网协议转换成长整型数字

说明

ip2long ( string $ip_address ) : int

函数 ip2long() 返回 IPV4 网络地址的长整型格式,从标准网络地址格式(点字符串)转化得到。

ip2long() 还可以与非完整IP进行工作。 阅读 » http://publibn.boulder.ibm.com/doc_link/en_US/a_doc_lib/libs/commtrf2/inet_addr.htm 获得更多信息。

参数

ip_address

一个标准格式的地址。

返回值

返回IP地址转换后的数字 或 FALSE 如果 ip_address 是无效的。

更新日志

版本 说明
5.5.0 Prior to this version, on Windows ip2long() would sometimes return a valid number even if passed a value which was not an (IPv4) Internet Protocol dotted address.
5.2.10 再此之前的版本, ip2long() 有时会返回即使这不是一个IPV4的标准地址的数字地址。

范例

Example #1 ip2long() 例子

<?php
$ip 
gethostbyname('www.example.com');
$out "The following URLs are equivalent:<br />\n";
$out .= 'http://www.example.com/, http://' $ip '/, and http://' sprintf("%u"ip2long($ip)) . "/<br />\n";
echo 
$out;
?>

Example #2 显示IP地址

第二个例子说明打印一个转换后的地址使用 printf() 在PHP4和PHP5的功能:

<?php
$ip   
gethostbyname('www.example.com');
$long ip2long($ip);

if (
$long == -|| $long === FALSE) {
    echo 
'Invalid IP, please try again';
} else {
    echo 
$ip   "\n";           // 192.0.34.166
    
echo $long "\n";           // -1073732954
    
printf("%u\n"ip2long($ip)); // 3221234342
}
?>

注释

Note:

因为PHP的 integer 类型是有符号,并且有许多的IP地址讲导致在32位系统的情况下为负数, 你需要使用 "%u" 进行转换通过 sprintf()printf() 得到的字符串来表示无符号的IP地址。

Note:

ip2long() 将返回 FALSE 在IP是 255.255.255.255 的情况,版本为 PHP 5 <= 5.0.2. 在修复后 PHP 5.0.3 会返回 -1 (与PHP4相同).

参见

  • long2ip() - 将长整型转化为字符串形式带点的互联网标准格式地址(IPV4)
  • sprintf() - Return a formatted string

相关文章
php 网络 函数 获取互联网主机名对应的 ipv4 地址列表php 网络 函数 获取互联网主机名对应的 mx 记录php 网络 函数 获取互联网服务协议对应的端口php 字符串 函数 将逻辑顺序希伯来文(logical hebrew)转换为视觉顺序希伯来文(visual hebrew)php 字符串 函数 将逻辑顺序希伯来文(logical hebrew)转换为视觉顺序希伯来文(visual hebrew),并且转换换行符php 网络 函数 将 ipv4 的字符串互联网协议转换成长整型数字php variable handling 函数 检测变量是否为数字或数字字符串php 网络 函数 将长整型转化为字符串形式带点的互联网标准格式地址(ipv4)php 多字节字符串 函数 对字符串进行大小写转换php 多字节字符串 函数 转换字符的编码php 多字节字符串 函数 转换一个或多个变量的字符编码php 多字节字符串 函数 根据 html 数字字符串解码成字符php 字符串 函数 将数字格式化成货币字符串php 字符串 函数 以千位分隔符方式格式化一个数字php openssl 函数 将一个密钥的可输出表示转换为字符串php 字符串 函数 转换字符串第一个字节为 0 255 之间的值php 字符串 函数 将字符串转换为数组php xml 解析器函数 将用 utf 8 方式编码的 iso 8859 1 字符串转换成单字节的 iso 8859 1 字符串。php xml 解析器函数 将 iso 8859 1 编码的字符串转换为 utf 8 编码php php 选项/信息 函数 对比两个「php 规范化」的版本数字字符串
关注编程学问公众号