Neueste Web-Entwicklung Tutorials
 

PHP Filter


Validieren von Daten = fest, ob die Daten in der richtigen Form.

Hygienisierung data = Entfernen Sie ungültige Zeichen aus den Daten.


Die PHP-Filter-Erweiterung

PHP-Filter werden verwendet, externe Eingabe zu validieren und sanieren.

Die PHP-Filter-Erweiterung hat viele der Funktionen, die für eine Benutzereingabe überprüft, und wird entwickelt, um die Datenvalidierung einfacher und schneller zu machen.

Die filter_list() Funktion kann verwendet werden , um aufzulisten , was die PHP - Filter - Erweiterung bietet:

Beispiel

<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>
Führen Sie zB »

Warum verwenden Sie Filter?

Viele Web-Anwendungen erhalten externen Eingang. Externe Eingabe / Daten können:

  • Benutzereingabe von einem Formular
  • Cookies
  • Web-Services-Daten
  • Server-Variablen
  • Datenbank-Abfrageergebnisse

Sie sollten immer externe Daten überprüfen!
Ungültige übermittelten Daten kann zu Sicherheitsproblemen führen und brechen Sie Ihre Webseite!
Durch die Verwendung von PHP-Filter können Sie sicher sein, Ihre Anwendung die richtige Eingabe wird!


PHP filter_var() Funktion

Die filter_var() Funktion sowohl Daten validieren und zu desinfizieren.

Die filter_var() Funktion filtert eine einzelne Variable mit einem spezifizierten Filter. Es dauert zwei Daten:

  • Die Variable, die Sie überprüfen möchten
  • Die Art der Überprüfung zu verwenden,

Desinfizieren Sie einen String

Das folgende Beispiel verwendet die filter_var() Funktion , um alle HTML - Tags aus einer Zeichenfolge zu entfernen:

Beispiel

<?php
$str = "<h1>Hello World!</h1>";
$newstr = filter_var($str, FILTER_SANITIZE_STRING);
echo $newstr;
?>
Führen Sie zB »

Bestätigen Sie einen Integer

Das folgende Beispiel verwendet die filter_var() Funktion zu überprüfen , ob die Variable $ int eine ganze Zahl ist . Wenn $ int eine ganze Zahl ist, wird die Ausgabe des Codes oben sein: "Integer is valid" . Wenn int $ nicht eine ganze Zahl ist, wird der Ausgang sein: "Integer is not valid" :

Beispiel

<?php
$int = 100;

if (!filter_var($int, FILTER_VALIDATE_INT) === false) {
    echo("Integer is valid");
} else {
    echo("Integer is not valid");
}
?>
Führen Sie zB »

Tipp: filter_var() und Problem mit 0

In dem obigen Beispiel, wenn $ int auf 0 gesetzt wurde, kehrt die Funktion über "Integer is not valid" . Um dieses Problem zu lösen, verwenden Sie den Code unten:

Beispiel

<?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");
}
?>
Führen Sie zB »

Bestätigen Sie eine IP-Adresse

Das folgende Beispiel verwendet die filter_var() Funktion zu überprüfen , ob die Variable $ ip eine gültige IP - Adresse lautet:

Beispiel

<?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");
}
?>
Führen Sie zB »

Desinfizieren und Validieren E-Mail-Adresse

Das folgende Beispiel verwendet die filter_var() Funktion, zunächst alle ungültigen Zeichen aus dem $ E - Mail - Variable zu entfernen, dann prüfen , ob es sich um eine gültige E - Mail - Adresse lautet:

Beispiel

<?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");
}
?>
Führen Sie zB »

Desinfizieren und eine URL Validieren

Das folgende Beispiel verwendet die filter_var() Funktion, zunächst alle ungültigen Zeichen von einer URL zu entfernen, dann prüfen , ob $ url eine gültige URL ist:

Beispiel

<?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");
}
?>
Führen Sie zB »

Komplette PHP Filter Referenz

Eine vollständige Referenz aller Filterfunktionen, gehen Sie auf unsere komplette PHP Filter Referenz. Überprüfen Sie jeden Filter, um zu sehen, welche Optionen und Flags zur Verfügung stehen.

Die Referenz enthält eine kurze Beschreibung und Beispiele für die Verwendung, für jede Funktion!