Zaawansowane filtry PHP
Sprawdź liczbę całkowitą w zakresie
Poniższy przykład wykorzystuje filter_var()
funkcję do sprawdzenia, czy zmienna jest zarówno typu INT, jak i między 1 a 200:
Przykład
<?php
$int = 122;
$min = 1;
$max = 200;
if (filter_var($int, FILTER_VALIDATE_INT, array("options" => array("min_range"=>$min, "max_range"=>$max))) === false) {
echo("Variable value is not within the legal range");
} else {
echo("Variable value is within the legal range");
}
?>
Sprawdź poprawność adresu IPv6
Poniższy przykład wykorzystuje filter_var()
funkcję do sprawdzenia, czy zmienna $ip jest poprawnym adresem IPv6:
Przykład
<?php
$ip = "2001:0db8:85a3:08d3:1319:8a2e:0370:7334";
if (!filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6) === false) {
echo("$ip is a valid IPv6 address");
} else {
echo("$ip is not a valid IPv6 address");
}
?>
Sprawdź poprawność adresu URL — musi zawierać ciąg zapytania
Poniższy przykład wykorzystuje filter_var()
funkcję do sprawdzenia, czy zmienna $url jest adresem URL z ciągiem zapytania:
Przykład
<?php
$url = "https://www.w3schools.com";
if (!filter_var($url, FILTER_VALIDATE_URL, FILTER_FLAG_QUERY_REQUIRED) === false) {
echo("$url is a valid URL with a query string");
} else {
echo("$url is not a valid URL with a query string");
}
?>
Usuń znaki o wartości ASCII > 127
Poniższy przykład używa filter_var()
funkcji do oczyszczenia ciągu. Spowoduje to zarówno usunięcie wszystkich tagów HTML, jak i wszystkich znaków z wartością ASCII > 127 z ciągu:
Przykład
<?php
$str = "<h1>Hello WorldÆØÅ!</h1>";
$newstr = filter_var($str, FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_HIGH);
echo $newstr;
?>
Pełne odniesienie do filtrów PHP
Aby uzyskać pełne informacje o wszystkich funkcjach filtrów, przejdź do naszej pełnej dokumentacji filtrów PHP. Sprawdź każdy filtr, aby zobaczyć, jakie opcje i flagi są dostępne.
Odniesienie zawiera krótki opis i przykłady użycia dla każdej funkcji!