【发布时间】:2018-06-29 20:58:58
【问题描述】:
我想将 IP 地址或子网掩码转换为位。
有没有简单的方法可以做到这一点?
示例:
输入:255.255.255.0
输出:11111111 11111111 11111111 00000000
【问题讨论】:
我想将 IP 地址或子网掩码转换为位。
有没有简单的方法可以做到这一点?
示例:
输入:255.255.255.0
输出:11111111 11111111 11111111 00000000
【问题讨论】:
ip2long 在这种情况下非常有用:
$ipAddress = "8.8.8.8";
echo decbin(ip2long($ipAddress));
另外,请注意decbin() 不会总是输出相同的位数,因此请尝试使用sprintf() 来代替始终获得 32 位:
sprintf("%032b", ip2long($ipAddress));
【讨论】:
试试我为你做的这段代码:
$ipAddress = "255.255.255.0";
$ipsArray = explode(".", $ipAddress);
foreach($ipsArray as $ip){
$ipInt = (int)$ip;
echo decbin($ipInt) . " ";
}
【讨论】: