|
首先声明,本人初次使用PHP做项目,还有很多不明白处向各位请教。
就是查询数据库时有一个存IP地址的字段在库中是以 Network Endian 方式存的,显示时以 long2ip() 转换就好了,但 long2ip 之前必须先有 ntohl 转换才行,但 PHP 中似乎没有这个函数,所以我用 pack 和 unpack 自定义了一个,相应的还有 port 也是 Network Endian 存储的。
[PHP]function ntohl($n)
{
$arr = unpack('I', pack('N', $n));
return $arr[1];
}
function ntohs($n)
{
$arr = unpack('S', pack('n', $n));
return $arr[1];
}
[/PHP]
看起来就不够简洁,但这个应该是属于 common task 之一,不知各位有没有更简洁的实现方式? |
|