标签: php mysql
我有一个php网站。我想为每个用户存储最后一个ip。我希望它适用于IPV4和IPV6用户。知道怎么样?
答案 0 :(得分:6)
只需使用inet_pton()将其转换为二进制表示形式,然后使用inet_ntop()将其转换回字符串。
inet_pton()
inet_ntop()
另一种解决方案是在DB中存储IP字符串而不进行任何转换。 VARCHAR(39)字段将起作用,因为最高/最长IPv6为ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
VARCHAR(39)
ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff