gpt4 book ai didi

php - 如果 2 个 IPv6 地址相等,我如何检查 PHP?

转载 作者:行者123 更新时间:2023-12-02 00:59:46 25 4
gpt4 key购买 nike

我想检查一个 IP 是否在白名单中,但是 IPv6-Adresses 可以有不同的表示:

例如 2001:0DB8:0:0:1::12001:0db8:0000:0000:0001:0000:0000:0001 的缩写形式>.

因此,字符串比较不起作用。我怎么知道两个地址相等?

最佳答案

使用inet_pton .

function is_ip_equal($ip1, $ip2) {
return inet_pton($ip1) == inet_pton($ip2);
}

(但是,这仅在未使用 --disable-ipv6 选项 编译 PHP 时才有效。您可以使用 if (!defined('AF_INET6')) echo 进行检查“禁用 IPv6 支持”;)。

关于php - 如果 2 个 IPv6 地址相等,我如何检查 PHP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30047275/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com