(PHP 5 >= 5.2.0, PHP 7, PHP 8)
filter_input — Nimmt eine Variable von Außen entgegen und filtert sie optional
typeINPUT_*-Konstanten.
Der Inhalt der zu filternden Superglobalen ist der ursprüngliche "rohe" Inhalt, der von der SAPI bereitgestellt wird, d. h. bevor die Superglobale verändert wurde. Um eine geänderte Superglobale zu filtern, sollte stattdessen filter_var() verwendet werden.
var_nametype gefiltert werden soll.
filterFILTER_VALIDATE_*-Konstanten
verwendet wird, ein Bereinigungsfilter, indem eine der
FILTER_SANITIZE_*-Konstanten
verwendet wird, der Fiter FILTER_UNSAFE_RAW oder ein
benutzerdefinierter Filter durch Verwendung von
FILTER_CALLBACK.
Hinweis: Die Voreinstellung ist
FILTER_DEFAULT, was ein Alias vonFILTER_UNSAFE_RAWist. Dies bedeutet, dass standardmäßig keine Filterung stattfindet.
optionsFILTER_FLAG_*.
Wenn filter Optionen akzeptiert, können die Flags
durch Verwendung des Array-Schlüssels "flags"
angegeben werden.
Bei Erfolg wird die gefilterte Variable zurückgegeben.
Wenn die Variable nicht gesetzt ist, wird false zurückgegeben.
Im Fehlerfall wird false zurückgegeben, es sei denn, das Flag
FILTER_NULL_ON_FAILURE wird verwendet; in diesem Fall
wird null zurückgegeben.
Beispiel #1 filter_input()-Beispiel
<?php
$search_html = filter_input(INPUT_GET, 'search', FILTER_SANITIZE_SPECIAL_CHARS);
$search_url = filter_input(INPUT_GET, 'search', FILTER_SANITIZE_ENCODED);
echo "Sie haben nach $search_html gesucht.\n";
echo "<a href='?search=$search_url'>Erneut suchen.</a>";
?>Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
Sie haben nach Ich & Sohn gesucht. <a href='?search=Ich%20%26%20Sohn'>Erneut suchen.</a>
FILTER_VALIDATE_*
FILTER_SANITIZE_*