Najnowsze tutoriale tworzenie stron internetowych
 

PHP filtry


Sprawdzanie poprawności danych = Ustal, czy dane są w odpowiedniej formie.

Odkażania danych = Usunąć niedozwolony znak z danymi.


Filtr PHP Extension

Filtry PHP są wykorzystywane do sprawdzania poprawności i zdezynfekować wejście zewnętrzne.

Rozszerzenie filtr PHP posiada wiele funkcji potrzebnych do sprawdzenia danych wprowadzonych przez użytkownika, i został zaprojektowany, aby ułatwić sprawdzanie poprawności danych i szybciej.

filter_list() Funkcja ta może być używana do listy jakie oferuje rozszerzenie filtr PHP:

Przykład

<table>
  <tr>
    <td>Filter Name</td>
    <td>Filter ID</td>
  </tr>
  <?php
  foreach (filter_list() as $id =>$filter) {
      echo '<tr><td>' . $filter . '</td><td>' . filter_id($filter) . '</td></tr>';
  }
  ?>
</table>
Uruchomić przykład »

Dlaczego warto korzystać z filtrów?

Wiele aplikacji internetowych otrzymują wejście zewnętrzne. wejścia / dane zewnętrzne mogą być:

  • Wprowadzane przez użytkownika z formularza
  • Cookies
  • Dane usług internetowych
  • zmienne serwerowe
  • Wyniki zapytań w bazie

Zawsze należy sprawdzić poprawność danych zewnętrznych!
Nieprawidłowe przedstawione dane mogą prowadzić do problemów bezpieczeństwa i przełamać swoją stronę internetową!
Za pomocą filtrów PHP można mieć pewność, że aplikacja staje się właściwe wejście!


PHP filter_var() Funkcja

filter_var() funkcją zarówno walidacji i dezynfekcji danych.

filter_var() funkcja filtruje pojedynczej zmiennej z określonym filtrem. Zajmuje dwa kawałki danych:

  • Zmienna chcesz sprawdzić
  • Rodzaj czeku w użyciu

Zdezynfekować String

Poniższy przykład używa filter_var() funkcji, aby usunąć wszystkie znaczniki HTML z ciągu znaków:

Przykład

<?php
$str = "<h1>Hello World!</h1>";
$newstr = filter_var($str, FILTER_SANITIZE_STRING);
echo $newstr;
?>
Uruchomić przykład »

Sprawdzić poprawność Integer

Poniższy przykład używa filter_var() funkcji, aby sprawdzić, czy zmienna $ int jest liczbą całkowitą. Jeśli $ int jest liczbą całkowitą, wyjście kodu powyżej będą: "Integer is valid" . Jeśli $ int nie jest liczbą całkowitą, to wyjście będzie: "Integer is not valid" :

Przykład

<?php
$int = 100;

if (!filter_var($int, FILTER_VALIDATE_INT) === false) {
    echo("Integer is valid");
} else {
    echo("Integer is not valid");
}
?>
Uruchomić przykład »

Wskazówka: filter_var() i problem z 0

W powyższym przykładzie, jeśli $ int została ustawiona na 0, funkcja powyżej powróci "Integer is not valid" . Aby rozwiązać ten problem, należy skorzystać z poniższego kodu:

Przykład

<?php
$int = 0;

if (filter_var($int, FILTER_VALIDATE_INT) === 0 || !filter_var($int, FILTER_VALIDATE_INT) === false) {
    echo("Integer is valid");
} else {
    echo("Integer is not valid");
}
?>
Uruchomić przykład »

Sprawdzić poprawność adresu IP

Poniższy przykład używa filter_var() funkcji, aby sprawdzić, czy zmienna $ ip jest prawidłowy adres IP:

Przykład

<?php
$ip = "127.0.0.1";

if (!filter_var($ip, FILTER_VALIDATE_IP) === false) {
    echo("$ip is a valid IP address");
} else {
    echo("$ip is not a valid IP address");
}
?>
Uruchomić przykład »

Zdezynfekować i potwierdź adres e-mail

Poniższy przykład używa filter_var() funkcji, aby najpierw usunąć wszystkie niedozwolone znaki ze zmiennej $ e-mail, a następnie sprawdzić, czy jest to prawidłowy adres e-mail:

Przykład

<?php
$email = "[email protected]";

// Remove all illegal characters from email
$email = filter_var($email, FILTER_SANITIZE_EMAIL);

// Validate e-mail
if (!filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
    echo("$email is a valid email address");
} else {
    echo("$email is not a valid email address");
}
?>
Uruchomić przykład »

Zdezynfekować i zatwierdź URL

Poniższy przykład używa filter_var() funkcji, aby najpierw usunąć wszystkie niedozwolone znaki z adresu URL, a następnie sprawdzić, czy $ url jest poprawny adres URL:

Przykład

<?php
$url = "http://www.w3ii.com";

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

// Validate url
if (!filter_var($url, FILTER_VALIDATE_URL) === false) {
    echo("$url is a valid URL");
} else {
    echo("$url is not a valid URL");
}
?>
Uruchomić przykład »

Filtr kompletny PHP referencyjny

Pełną odniesienia wszystkich funkcji filtrujących, przejdź do naszej pełnej PHP filtrów odniesienia. Sprawdź każdy filtr, aby zobaczyć, jakie opcje są dostępne i flagi.

Wniosek ten zawiera krótki opis oraz przykłady użycia, dla każdej funkcji!