Filter für die Bereinigung

Liste der Filter für die Bereinigung
IDNameFlagsDescription
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.
Warnung

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

Changelog

VersionBeschreibung
8.1.0FILTER_SANITIZE_STRING und FILTER_SANITIZE_STRIPPED werden als veraltet eingestuft.
8.0.0FILTER_SANITIZE_MAGIC_QUOTES wurde entfernt.
7.3.0FILTER_SANITIZE_ADD_SLASHES wurde als Ersatz für FILTER_SANITIZE_MAGIC_QUOTES hinzugefügt.
7.3.0FILTER_SANITIZE_MAGIC_QUOTES wird als veraltet eingestuft.
To Top