ID | Name | Flags | Description |
---|---|---|---|
FILTER_SANITIZE_EMAIL | "email" | Entfernt alle Zeichen außer Buchstaben, Ziffern und !#$%&'*+-=?^_`{|}~@.[] . | |
FILTER_SANITIZE_ENCODED | "encoded" | FILTER_FLAG_STRIP_LOW , FILTER_FLAG_STRIP_HIGH , FILTER_FLAG_STRIP_BACKTICK , FILTER_FLAG_ENCODE_LOW , FILTER_FLAG_ENCODE_HIGH | URL-Kodierung von Zeichenketten, optionales Entfernen oder Kodieren von Sonderzeichen. |
FILTER_SANITIZE_MAGIC_QUOTES | "magic_quotes" | Wendet addslashes() an. (Ab PHP 7.3.0 VERALTET und ab PHP 8.0.0 ENTFERNT. Verwenden Sie stattdessen FILTER_SANITIZE_ADD_SLASHES .) | |
FILTER_SANITIZE_ADD_SLASHES | "add_slashes" | Wendet addslashes() an. (Verfügbar ab PHP 7.3.0) | |
FILTER_SANITIZE_NUMBER_FLOAT | "number_float" | FILTER_FLAG_ALLOW_FRACTION , FILTER_FLAG_ALLOW_THOUSAND , FILTER_FLAG_ALLOW_SCIENTIFIC | Entfernt alle Zeichen außer Ziffern, +- und optional .,eE . |
FILTER_SANITIZE_NUMBER_INT | "number_int" | Entfernt alle Zeichen außer Ziffern, Plus- und Minuszeichen. | |
FILTER_SANITIZE_SPECIAL_CHARS | "special_chars" | FILTER_FLAG_STRIP_LOW , FILTER_FLAG_STRIP_HIGH , FILTER_FLAG_STRIP_BACKTICK , FILTER_FLAG_ENCODE_HIGH | HTML-Kodierung von '"<>& und Zeichen mit ASCII-Wert kleiner als 32, optional Entfernen oder Kodieren anderer Sonderzeichen |
FILTER_SANITIZE_FULL_SPECIAL_CHARS | "full_special_chars" | FILTER_FLAG_NO_ENCODE_QUOTES | Äquivalent zum Aufruf von htmlspecialchars(), bei dem ENT_QUOTES gesetzt ist. Die Kodierung von Anführungszeichen kann durch Setzen von FILTER_FLAG_NO_ENCODE_QUOTES deaktiviert werden. Wie htmlspecialchars() kennt dieser Filter die Einstellung default_charset und wenn eine Folge von Bytes entdeckt wird, die ein im aktuellen Zeichensatz ungültiges Zeichen enthält, dann wird die komplette Zeichenkette verworfen, was zu einer Zeichenkette der Länge 0 führt. Wenn dieser Filter als Standardfilter verwendet wird, siehe die Warnung unten über das Setzen der Standardflags auf 0. |
FILTER_SANITIZE_STRING | "string" | FILTER_FLAG_NO_ENCODE_QUOTES , FILTER_FLAG_STRIP_LOW , FILTER_FLAG_STRIP_HIGH , FILTER_FLAG_STRIP_BACKTICK , FILTER_FLAG_ENCODE_LOW , FILTER_FLAG_ENCODE_HIGH , FILTER_FLAG_ENCODE_AMP | Entfernt Tags und HTML-kodiert doppelte und einfache Anführungszeichen und entfernt oder kodiert optional Sonderzeichen. Die Kodierung von Anführungszeichen kann durch Setzen von FILTER_FLAG_NO_ENCODE_QUOTES deaktiviert werden. (Seit PHP 8.1.0 veraltet, stattdessen sollte htmlspecialchars() verwendet werden.) |
FILTER_SANITIZE_STRIPPED | "stripped" | Alias des "String"-Filters. (Seit PHP 8.1.0 veraltet, stattdessen sollte htmlspecialchars() verwendet werden.) | |
FILTER_SANITIZE_URL | "url" | Entfernt alle Zeichen außer Buchstaben, Ziffern und $-_.+!*'(),{}|\\^~[]`<>#%";/?:@&= . | |
FILTER_UNSAFE_RAW | "unsafe_raw" | FILTER_FLAG_STRIP_LOW , FILTER_FLAG_STRIP_HIGH , FILTER_FLAG_STRIP_BACKTICK , FILTER_FLAG_ENCODE_LOW , FILTER_FLAG_ENCODE_HIGH , FILTER_FLAG_ENCODE_AMP | Tut nichts oder entfernt oder kodiert optional Sonderzeichen. Dieser Filter ist auch ein Alias für FILTER_DEFAULT . |
Wenn einer dieser Filter als Standardfilter verwendet wird, entweder durch die ini-Datei oder über die Konfiguration des Webservers, wird das Standardflag auf FILTER_FLAG_NO_ENCODE_QUOTES
gesetzt. Damit Anführungszeichen standardmäßig kodiert werden, muss filter.default_flags explizit auf 0 gesetzt werden. Etwa so:
Beispiel #1 Den Standardfilter so konfigurieren, dass er sich wie htmlspecialchars verhält
filter.default = full_special_chars
filter.default_flags = 0
Version | Beschreibung |
---|---|
8.1.0 | FILTER_SANITIZE_STRING und FILTER_SANITIZE_STRIPPED werden als veraltet eingestuft. |
8.0.0 | FILTER_SANITIZE_MAGIC_QUOTES wurde entfernt. |
7.3.0 | FILTER_SANITIZE_ADD_SLASHES wurde als Ersatz für FILTER_SANITIZE_MAGIC_QUOTES hinzugefügt. |
7.3.0 | FILTER_SANITIZE_MAGIC_QUOTES wird als veraltet eingestuft. |