FILTER_VALIDATE_IP 過濾器把值作為 IP 進行驗證,用於驗證 IP 是否合法,支持 IPV6 驗證
例子
<?php $ip = "192.168.0.1"; if(!filter_var($ip, FILTER_VALIDATE_IP)) { echo "IP is not valid"; } else { echo "IP is valid"; } ?>
<?php $ip = "2001:0db8:85a3:08d3:1319:8a2e:0370:7334"; if(!filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)) { echo "IP is not valid"; } else { echo "IP is valid"; } ?>
filter_var 的第三個參數可能的取值有:
- FILTER_FLAG_IPV4 - 要求值是合法的 IPv4 IP(比如 255.255.255.255)
- FILTER_FLAG_IPV6 - 要求值是合法的 IPv6 IP(比如 2001:0db8:85a3:08d3:1319:8a2e:0370:7334)
- FILTER_FLAG_NO_PRIV_RANGE - 要求值是 RFC 指定的私域 IP (比如 192.168.0.1)
- FILTER_FLAG_NO_RES_RANGE - 要求值不在保留的 IP 范圍內。該標志接受 IPV4 和 IPV6 值。
參考鏈接: