Scripts
ip2bin en bin2ip
Functies om een ip om te zetten in binaire notatie + binaire notatie naar ip adres. Om deze functies volledig compatibel te houden zit er nog een derde functie bij, namelijk een verbeterde decbin , waarmee je een getal van het tiendelig stelsel om kan zetten naar binair + het aantal bits kan je opgeven.
ip2bin-en-bin2ip
<?php
function decextbin($dec, $bits = null){
$bin = decbin($dec); // convert
if(!is_null($bits) && strlen($bin) > $bits) throw new LengthException('The resulting binary is more than '.$bits.' bits.');
else while(strlen($bin) < $bits) $bin = '0'.$bin; // add zero's
return $bin; //done
}
function ip2bin($ip){
return decextbin(ip2long($ip),32);
}
function bin2ip($bin){
return long2ip(bindec($bin));
}
// voorbeeldje
var_dump( ip2bin('127.0.0.1'), bin2ip('01111111000000000000000000000001'), decextbin(45,8) );
?>
Levert:
[code]string(32) "01111111000000000000000000000001"
string(9) "127.0.0.1"
string(8) "00101101"[/code]
Reacties
0