为什么sprintf('%u',inet_pton($ ip))返回0?

时间:2014-10-26 15:12:48

标签: php ipv6 ipv4

无论$ip=4.23.45.61还是2a00:8640:0001:0000:0224:36ff:feef:1d89,为什么sprintf('%u', inet_pton($ip))sprintf('%x', inet_pton($ip))始终返回0?

谢谢,

1 个答案:

答案 0 :(得分:2)

inet_pton返回包含地址的压缩表示的二进制字符串。这不是数字,因此无法使用%u%x格式化数字。

如果要将打包的二进制字符串转换回人类可读的字符串,可以使用inet_ntop