Samouczek PHP

Strona główna PHP Wprowadzenie do PHP Instalacja PHP Składnia PHP Komentarze PHP Zmienne PHP PHP Echo / Drukuj Typy danych PHP Ciągi PHP Liczby PHP Matematyka w PHP Stałe PHP Operatory PHP PHP Jeśli...Inne...Elseif Przełącznik PHP Pętle PHP Funkcje PHP Tablice PHP PHP Superglobals PHP RegEx

Formularze PHP

Obsługa formularzy PHP Walidacja formularzy PHP Wymagany formularz PHP Adres URL/e-mail formularza PHP Formularz PHP kompletny

Zaawansowany PHP

Data i godzina w PHP Uwzględnij PHP Obsługa plików PHP Otwórz/odczytaj plik PHP Tworzenie/zapisywanie plików PHP Przesyłanie plików PHP Pliki cookie PHP Sesje PHP Filtry PHP Zaawansowane filtry PHP Funkcje wywołania zwrotnego PHP PHP JSON Wyjątki PHP

PHP OOP

PHP Co to jest OOP Klasy/obiekty PHP Konstruktor PHP Destruktor PHP Modyfikatory dostępu PHP Dziedziczenie PHP Stałe PHP Klasy abstrakcyjne PHP Interfejsy PHP Cechy PHP Metody statyczne PHP Właściwości statyczne PHP Przestrzenie nazw PHP Iterowalne PHP

Baza danych MySQL

Baza danych MySQL Połączenie MySQL Tworzenie bazy danych MySQL Utwórz tabelę MySQL Wstaw dane MySQL Pobierz ostatni identyfikator MySQL Wstaw wiele MySQL Przygotowano MySQL Wybierz dane MySQL MySQL Gdzie Zamów MySQL według Usuń dane MySQL Dane aktualizacji MySQL Dane limitu MySQL

PHP XML

Parsery PHP XML Parser PHP SimpleXML PHP SimpleXML — Get Rozszerzenie PHP XML PHP XML DOM

PHP - AJAX

Wprowadzenie do AJAX AJAX PHP Baza danych AJAX XML AJAX Wyszukiwanie na żywo AJAX Ankieta AJAX

Przykłady PHP

Przykłady PHP Kompilator PHP Quiz PHP Ćwiczenia PHP Certyfikat PHP

Odniesienie do PHP

Przegląd PHP Tablica PHP Kalendarz PHP Data PHP Katalog PHP Błąd PHP Wyjątek PHP System plików PHP Filtr PHP PHP FTP PHP JSON Słowa kluczowe PHP Biblioteka PHP Poczta PHP Matematyka w PHP Różne PHP PHP MySQLi Sieć PHP Kontrola wyjścia PHP PHP RegEx PHP SimpleXML Strumień PHP ciąg PHP Obsługa zmiennych PHP Parser PHP XML Kod pocztowy PHP Strefy czasowe PHP

Filtry PHP


Walidacja danych = Określ, czy dane są we właściwej formie.

Sanitizing data = Usuń wszelkie niedozwolone znaki z danych.


Rozszerzenie filtra PHP

Filtry PHP są używane do walidacji i oczyszczania danych wejściowych.

Rozszerzenie filtra PHP ma wiele funkcji potrzebnych do sprawdzania danych wprowadzanych przez użytkownika i jest zaprojektowane tak, aby walidacja danych była łatwiejsza i szybsza.

filter_list()Funkcji można użyć do wylistowania tego, co oferuje rozszerzenie filtra 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>

Dlaczego warto korzystać z filtrów?

Wiele aplikacji internetowych otrzymuje dane wejściowe z zewnątrz. Zewnętrzne dane wejściowe/dane mogą być:

  • Dane wprowadzone przez użytkownika z formularza
  • Ciasteczka
  • Dane usług internetowych
  • Zmienne serwera
  • Wyniki zapytań do bazy danych

Zawsze powinieneś weryfikować dane zewnętrzne!
Nieprawidłowe przesłane dane mogą prowadzić do problemów z bezpieczeństwem i zepsuć stronę!
Używając filtrów PHP, możesz mieć pewność, że Twoja aplikacja otrzyma prawidłowe dane wejściowe!



PHP filter_var() Funkcja

Funkcja filter_var()zarówno weryfikuje, jak i oczyszcza dane.

Funkcja filter_var()filtruje pojedynczą zmienną z określonym filtrem. Zajmuje dwie części danych:

  • Zmienna, którą chcesz sprawdzić
  • Rodzaj czeku do użycia

Zdezynfekuj sznurek

Poniższy przykład używa filter_var()funkcji do usunięcia wszystkich znaczników HTML z ciągu:

Przykład

<?php
$str = "<h1>Hello World!</h1>";
$newstr = filter_var($str, FILTER_SANITIZE_STRING);
echo $newstr;
?>

Sprawdź poprawność liczby całkowitej

Poniższy przykład używa filter_var()funkcji do sprawdzenia, czy zmienna $int jest liczbą całkowitą. Jeśli $int jest liczbą całkowitą, wynikiem poniższego kodu będzie: „Liczba całkowita jest poprawna”. Jeśli $int nie jest liczbą całkowitą, wynik będzie następujący: „Liczba całkowita jest nieprawidłowa”:

Przykład

<?php
$int = 100;

if (!filter_var($int, FILTER_VALIDATE_INT) === false) {
  echo("Integer is valid");
} else {
  echo("Integer is not valid");
}
?>

Wskazówka: filter_var() i problem z 0

W powyższym przykładzie, jeśli $int był ustawiony na 0, powyższa funkcja zwróci "Liczba całkowita nie jest poprawna". Aby rozwiązać ten problem, użyj 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");
}
?>

Sprawdź poprawność adresu IP

Poniższy przykład wykorzystuje filter_var()funkcję do sprawdzenia, czy zmienna $ip jest poprawnym adresem 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");
}
?>

Oczyść i zweryfikuj adres e-mail

Poniższy przykład używa filter_var()funkcji, aby najpierw usunąć wszystkie niedozwolone znaki ze zmiennej $email, a następnie sprawdzić, czy jest to poprawny 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");
}
?>

Oczyść i zweryfikuj adres 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 poprawnym adresem URL:

Przykład

<?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) === false) {
  echo("$url is a valid URL");
} else {
  echo("$url is not a valid URL");
}
?>

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!