Filtr PHP FILTER_VALIDATE_URL
Przykład
Sprawdź, czy zmienna $url jest prawidłowym adresem URL:
<?php
$url = "https://www.w3schools.com";
if (filter_var($url, FILTER_VALIDATE_URL)) {
echo("$url is a valid URL");
} else {
echo("$url is not a valid URL");
}
?>
Definicja i użycie
Filtr FILTER_VALIDATE_URL sprawdza poprawność adresu URL.
Możliwe flagi:
- FILTER_FLAG_SCHEME_REQUIRED — URL musi być zgodny z RFC (np. http://przykład)
- FILTER_FLAG_HOST_REQUIRED — URL musi zawierać nazwę hosta (np. http://www.example.com)
- FILTER_FLAG_PATH_REQUIRED — URL musi mieć ścieżkę po nazwie domeny (np. www.example.com/example1/)
- FILTER_FLAG_QUERY_REQUIRED — URL musi zawierać ciąg zapytania (np. „example.php?name=Piotr&wiek=37”)
Więcej przykładów
Poniższy przykład zarówno oczyszcza, jak i weryfikuje adres URL:
Przykład 1
Najpierw usuń wszystkie niedozwolone znaki ze zmiennej $url, a następnie sprawdź, czy jest to poprawny adres URL:
<?php
$url = "https://www.w3schools.com";
// 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");
}
?>
Przykład 2
W tym przypadku adres URL musi zawierać ciąg zapytania, aby był prawidłowy:
<?php
$url = "https://www.w3schools.com";
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");
}
?>
❮ Odniesienie do filtrów PHP