(PHP 5 >= 5.2.0, PHP 7)
filter_var — Filtern einer Variablen mit einem angegebenen Filter
variable
Wert, der gefiltert werden soll. Es ist zu beachten, dass skalare Werte vor dem Filtern intern nach String konvertiert werden.
filter
Die ID des anzuwendenden Filters. Die Handbuchseite Types of filters zeigt die verfügbaren Filter auf.
Falls dieser Parameter ausgelassen wird, so wird FILTER_DEFAULT
verwendet, was zu FILTER_UNSAFE_RAW
äquivalent ist. Dies wird dazu führen, dass keine Filterung stattfindet.
options
Assoziatives Array mit Optionen oder bitweise Disjunktion von Flags. Wenn der Filter Optionen akzeptiert, können Flags im "flags" Feld des Arrays angegeben werden. Für "callback" Filter sollte der callback-Typ angegeben werden. Der Callback muss den zu filternden Wert als einziges Argument akzeptieren und den gefilterten/bereinigten Wert zurückgeben.
<?php
// für Filter, die Optionen zulassen, verwenden Sie dieses Format
$options = array(
'options' => array(
'default' => 3, // Rückgabewert, falls der Filter fehlschlägt
// andere Optionen hier
'min_range' => 0
),
'flags' => FILTER_FLAG_ALLOW_OCTAL,
);
$var = filter_var('0755', FILTER_VALIDATE_INT, $options);
// für Filter, die nur Flags zulassen, können Sie diese direkt übergeben
$var = filter_var('oops', FILTER_VALIDATE_BOOLEAN, FILTER_NULL_ON_FAILURE);
// für Filter, die nur Flags zulassen, können Sie sie ebenfalls als Array übergeben
$var = filter_var('oops', FILTER_VALIDATE_BOOLEAN,
array('flags' => FILTER_NULL_ON_FAILURE));
// Callback-Validierungsfilter
function foo($value)
{
// Erwartetes Format: Nachname, Vornamen
if (strpos($value, ", ") === false) return false;
list($surname, $givennames) = explode(", ", $value, 2);
$empty = (empty($surname) || empty($givennames));
$notstrings = (!is_string($surname) || !is_string($givennames));
if ($empty || $notstrings) {
return false;
} else {
return $value;
}
}
$var = filter_var('Doe, Jane Sue', FILTER_CALLBACK, array('options' => 'foo'));
?>
Gibt die gefilterten Daten zurück oder FALSE
wenn fehlgeschlagen.
Beispiel #1 filter_var()-Beispiel
<?php
var_dump(filter_var('[email protected]', FILTER_VALIDATE_EMAIL));
var_dump(filter_var('http://example.com', FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED));
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
string(15) "[email protected]" bool(false)