filter_var

(PHP 5 >= 5.2.0, PHP 7)

filter_varFiltern einer Variablen mit einem angegebenen Filter

Beschreibung

filter_var ( mixed $variable [, int $filter = FILTER_DEFAULT [, mixed $options ]] ) : mixed

Parameter-Liste

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_BOOLEANFILTER_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(", "$value2);
    
$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'));
?>

Rückgabewerte

Gibt die gefilterten Daten zurück oder FALSE wenn fehlgeschlagen.

Beispiele

Beispiel #1 filter_var()-Beispiel

<?php
var_dump
(filter_var('[email protected]'FILTER_VALIDATE_EMAIL));
var_dump(filter_var('http://example.com'FILTER_VALIDATE_URLFILTER_FLAG_PATH_REQUIRED));
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

string(15) "[email protected]"
bool(false)

Siehe auch