How do I check if a users input is a valid IP address or not?
I want to check if an en开发者_开发百科tered input is a valid IP address or not. I would like a specific function that will help me validate a users input.
filter_var($ip, FILTER_VALIDATE_IP)
http://www.php.net/filter_var
Example:-
if(filter_var($ip, FILTER_VALIDATE_IP)){
echo 'Valid IP';
} else {
echo 'Not Valid IP';
}
// 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
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);
}
精彩评论