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 math 函数 在任意进制之间转换数字php 字符串 函数 函数把包含数据的二进制字符串转换为十六进制值php 字符串 函数 将字符由一种 cyrillic 字符转换成另一种php 字符串 函数 返回使用 htmlspecialchars 和 htmlentities 后的转换表php 网络 函数 返回主机名对应的 ipv4地址。php 网络 函数 获取互联网主机名对应的 ipv4 地址列表php 网络 函数 获取互联网服务协议对应的端口php 字符串 函数 将逻辑顺序希伯来文(logical hebrew)转换为视觉顺序希伯来文(visual hebrew)php 字符串 函数 将逻辑顺序希伯来文(logical hebrew)转换为视觉顺序希伯来文(visual hebrew),并且转换换行符php 字符串 函数 转换十六进制字符串为二进制字符串php iconv 函数 字符串按要求的字符编码来转换php 网络 函数 将 ipv4 的字符串互联网协议转换成长整型数字php 网络 函数 将长整型转化为字符串形式带点的互联网标准格式地址(ipv4)php openssl 函数 将一个密钥的可输出表示转换为字符串php 字符串 函数 将字符转换为 html 转义字符php 字符串 函数 将 quoted printable 字符串转换为 8 bit 字符串php 字符串 函数 将 8 bit 字符串转换成 quoted printable 字符串php 字符串 函数 转换指定字符php 字符串 函数 将字符串的首字母转换为大写php xml 解析器函数 将 iso 8859 1 编码的字符串转换为 utf 8 编码
关注编程学问公众号