PHP FILTER_VALIDATE_URL Filter

PHP Filter Reference : Check if the variable $url is a valid URL

Definition and Usage

The FILTER_VALIDATE_URL filter validates a URL.

Possible  flags:

  • FILTER_FLAG_SCHEME_REQUIRED - URL must be RFC compliant (like http://example)
  • FILTER_FLAG_HOST_REQUIRED - URL must include host name (like http://www.example.com)
  • FILTER_FLAG_PATH_REQUIRED - URL must have a path after the domain name (like www.example.com/example1/)
  • FILTER_FLAG_QUERY_REQUIRED - URL must have a query string (like "example?name=Peter&age=37")
  • More Examples

    The example below both sanitizes and validates an URL:

    Example 1

    First remove all illegal characters from the $url variable, then check if it is a valid URL:

    <?php
    $url = "https://w3resource.net";

    // Remove all illegal characters from a url
    $url = filter_var($url, FILTER_SANITIZE_URL);

    // Validate url
    if (filter_var($url, FILTER_VALIDATE_URL)) {
        echo("$url is a valid URL");
    } else {
        echo("$url is not a valid URL");
    }
    ?>

    Example 2

    Here, the URL is required to have a query string to be valid:

    <?php
    $url = "https://w3resource.net";

    if (filter_var($url, FILTER_VALIDATE_URL, FILTER_FLAG_QUERY_REQUIRED)) {
        echo("$url is a valid URL");
    } else {
        echo("$url is not a valid URL");
    }
    ?>

    ❮ PHP Filter Reference