Heim >Backend-Entwicklung >PHP-Tutorial >Verwenden Sie die Funktion filter_var_array() von PHP, um von mehreren Benutzern eingegebene Daten zu filtern

Verwenden Sie die Funktion filter_var_array() von PHP, um von mehreren Benutzern eingegebene Daten zu filtern

WBOY
WBOYOriginal
2023-11-03 13:04:541079Durchsuche

Verwenden Sie die Funktion filter_var_array() von PHP, um von mehreren Benutzern eingegebene Daten zu filtern

Mit der weit verbreiteten Nutzung von Webanwendungen haben Sicherheitsfragen immer mehr Aufmerksamkeit auf sich gezogen. Eine der wichtigen Sicherheitsmaßnahmen besteht darin, die vom Benutzer eingegebenen Daten zu filtern und zu überprüfen. PHP bietet eine Reihe von Filterfunktionen, darunter eine sehr praktische Funktion – filter_var_array(). Diese Funktion kann mehrere Daten gleichzeitig filtern und ist ein sehr effizientes und praktisches Werkzeug. In diesem Artikel wird die Verwendung dieser Funktion ausführlich vorgestellt und Ihnen spezifische Codebeispiele bereitgestellt.

  1. Grundlegende Verwendung der Funktion filter_var_array()

Die Funktion filter_var_array() wird zum Filtern mehrerer Daten verwendet. Ihre grundlegende Syntax lautet wie folgt:

filter_var_array ( array $data [, mixed $definition [, bool $add_empty = true ]] ) : array

Unter diesen stellt $data die zu filternden Daten dar und muss assoziativ sein Array. $definition stellt die Filterregel dar, die ein Array oder eine Konstante sein kann. $add_empty gibt an, ob die leere Zeichenfolge eingefügt werden soll.

Diese Funktion gibt die gefilterten Daten zurück, bei denen es sich ebenfalls um ein assoziatives Array handelt.

  1. Verwenden Sie die Funktion filter_var_array(), um die vom Benutzer eingegebenen Daten zu filtern.

Angenommen, wir haben ein Formular, das drei Eingabefelder enthält: Benutzername, Passwort und E-Mail-Adresse. Wir müssen die Daten in diesen drei Eingabefeldern filtern und überprüfen, um sicherzustellen, dass die Daten das richtige Format haben, bevor wir sie in der Datenbank speichern. Hier ist der Code, der die Funktion filter_var_array() verwendet, um diese Aufgabe zu erfüllen:

<?php
//从表单中获取数据
$username = $_POST['username'];
$password = $_POST['password'];
$email = $_POST['email'];

//定义过滤规则
$definition = array(
    'username' => FILTER_SANITIZE_STRING,
    'password' => FILTER_SANITIZE_STRING,
    'email'    => FILTER_VALIDATE_EMAIL
);

//使用filter_var_array()函数过滤数据
$data = filter_var_array(array(
    'username' => $username,
    'password' => $password,
    'email'    => $email
), $definition);

//判断用户输入是否合法
if($data['username'] && $data['password'] && $data['email']){
    //存储到数据库中
    //...
}else{
    //提示用户输入不合法
    //...
}
?>

Im obigen Code werden die drei Variablen $username, $password und $email zunächst aus dem Formular abgerufen. Dann haben wir ein $definition-Array definiert, in dem die Filterregel für „Benutzername“ und „Passwort“ FILTER_SANITIZE_STRING (Entfernen von Beschriftungen und Sonderzeichen) und die Filterregel für „E-Mail“ FILTER_VALIDATE_EMAIL (überprüfen, ob es sich um eine legale E-Mail-Adresse handelt) lautet ).

Als nächstes übergeben wir die drei erhaltenen Variablen und das definierte $definition-Array an die Funktion filter_var_array() und speichern das Rückgabeergebnis im $data-Array. Schließlich stellen wir fest, ob die drei Elemente im $data-Array nicht leer sind. Wenn sie nicht leer sind, können die Daten in der Datenbank gespeichert werden. Andernfalls wird die Eingabe des Benutzers als ungültig angezeigt.

Anhand der obigen Codebeispiele können wir die Effizienz und Bequemlichkeit der Funktion filter_var_array() erkennen, mit der mehrere Daten problemlos gefiltert und überprüft werden können.

  1. Konstanten der Funktion filter_var_array()

Im obigen Beispiel haben wir zwei Filterkonstanten verwendet: FILTER_SANITIZE_STRING und FILTER_VALIDATE_EMAIL. Diese beiden Konstanten sind in der Funktion filter_var_array() definiert und können auch direkt in der Funktion filter_var_array() verwendet werden . . Zusätzlich zu diesen beiden Konstanten verfügt die Funktion filter_var_array() über viele weitere Konstanten, die verwendet werden können. Im Folgenden finden Sie einige häufig verwendete Filterkonstanten:

  • Filter_valate_boolean: Überprüfen Sie, ob es sich um einen booleschen Typ
  • filter_valate_int: Überprüfen Sie, ob es sich um eine Ganzzahl
  • filter_validate_float: Überprüfen Sie, ob es sich um eine schwimmende Punktnummer handelt. Entspricht dem angegebenen regulären Ausdruck.
  • FILTER_VALIDATE_URL: Überprüfen Sie, ob es sich um eine URL-Adresse handelt.
  • FILTER_SANITIZE_SPECIAL_CHARS: Sonderzeichen in HTML-Entitäten maskieren.
  • FILTER_SANITIZE_NUMBER_INT: Nicht-numerische Zeichen aus der Zeichenfolge entfernen.
Zusammenfassung
  1. In diesem Artikel Wir haben die Funktion filter_var_array() von PHP im Detail vorgestellt und spezifische Codebeispiele gegeben. Durch die Demonstration tatsächlicher Fälle können Leser klar verstehen, wie diese Funktion zum Filtern und Überprüfen von vom Benutzer eingegebenen Daten verwendet wird, um die Sicherheit von Webanwendungen zu gewährleisten.

Das obige ist der detaillierte Inhalt vonVerwenden Sie die Funktion filter_var_array() von PHP, um von mehreren Benutzern eingegebene Daten zu filtern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn