I want to check if an entered input is a valid IP address or not. I would like a specific function that will help me validate a users input.
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
filter_var($ip, FILTER_VALIDATE_IP)
http://www.php.net/filter_var
回答2:
// Usually you'd get the value from $_POST or $_GET
$ip = "10.3.1.5";
if(!filter_var($ip, FILTER_VALIDATE_IP)) {
echo "Not a valid IP address!";
}
You can modify this by filtering for IPv4 and IPv6 IP addresses and exclude private and reserved IPs.
http://www.php.net/manual/filter.filters.validate.php
回答3:
By using preg_match();
function checkIPAddress($ipAddress)
{
return preg_match('/^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:[.](?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$/', $ipAddress);
}