在PHP中进行IPv6检查的最佳方法是什么?

时间:2014-02-06 13:08:23

标签: php ip ipv6

现在我正在使用strcmp,但这并不是最佳选择。

那么,最好的方法是什么?

5 个答案:

答案 0 :(得分:5)

您还可以使用filter_var

if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)) {
    echo "IPV6 valid.";
} else {
    echo "Not valid.";
}

您可以找到过滤器列表here

答案 1 :(得分:1)

使用strcmp而不是strcpy。这一定是问题所在。

答案 2 :(得分:1)

如果{-1}}在ip-address中,你可以检查一下:

:

答案 3 :(得分:0)

使用inet_pton。也适用于ipv4:

function ip_validate($ip){
    return inet_pton($ip) !== false;
}

答案 4 :(得分:0)

$_SERVER["REMOTE_ADDR"]这是你的好友。它会检查地址。我想最简单的方法是检查这个地址是否有非数字符号。如果它包含一个,则为IPv6地址。也许有更好或更优雅的,但我从未使用它,因为还没有提供商使用IPv6。

相关问题