Heim >Backend-Entwicklung >PHP-Tutorial >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.
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.
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.
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:
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!