PHP で IP アドレスを符号なし整数として保存する方法を考え出そうとしましたが、適切な関数を考え出す方法について十分に理解していないと思います。これが私が思いついたものです(それは間違っています):
// ip 2 unsigned int
function ip2int($ipaddress) {
// turns IP into signed integer
$signed = ip2long($ipaddress);
$unsigned = sprintf("%u", $signed);
return $unsigned;
}
// unsigned int 2 ip
function int2ip($unsigned) {
$signed = sprintf("%d", $unsigned);
$ipaddress = long2ip($signed);
return $ipaddress;
}
これを修正する方法について何か提案はありますか?