FILTER_VALIDATE_IP constant in PHP

The FILTER_VALIDATE_IP constant validates an IP address using PHP's filter_var() function. It checks if a given string is a valid IPv4 or IPv6 address format.

Syntax

filter_var($value, FILTER_VALIDATE_IP, $flags)

Parameters

  • $value − The IP address string to validate

  • FILTER_VALIDATE_IP − The validation filter constant

  • $flags − Optional flags to specify validation criteria

Flags

  • FILTER_FLAG_IPV4 − The value must be a valid IPv4 address

  • FILTER_FLAG_IPV6 − The value must be a valid IPv6 address

  • FILTER_FLAG_NO_PRIV_RANGE − The value must not be within a private range

  • FILTER_FLAG_NO_RES_RANGE − The value must not be within a reserved range

Return Value

Returns the validated IP address on success, or FALSE on failure.

Basic Example

<?php
   $ip = "35.2.1";
   if (filter_var($ip, FILTER_VALIDATE_IP)) {
      echo("Valid IP address!");
   } else {
      echo("Invalid IP address!");
   }
?>
Invalid IP address!

Valid IP Example

<?php
   $ip = "127.0.0.1";
   if (filter_var($ip, FILTER_VALIDATE_IP)) {
      echo("Valid IP address!");
   } else {
      echo("Invalid IP address!");
   }
?>
Valid IP address!

Using Flags

<?php
   $ip = "192.168.1.1";
   
   // Check if valid IPv4
   if (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)) {
      echo("Valid IPv4 address<br>");
   }
   
   // Check if not private range
   if (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE)) {
      echo("Not in private range<br>");
   } else {
      echo("In private range<br>");
   }
?>
Valid IPv4 address
In private range

Conclusion

The FILTER_VALIDATE_IP constant provides a reliable way to validate IP addresses in PHP. Use flags to enforce specific requirements like IPv4/IPv6 format or exclude private/reserved ranges.

Updated on: 2026-03-15T07:33:40+05:30

870 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements