filter_var

(PHP 5 >= 5.2.0, PHP 7)

filter_varFiltre une variable avec un filtre spécifique

Description

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

Liste de paramètres

variable

Valeur à filtrer. Notez que les valeurs scalaires sont converties en chaîne de caractères en interne avant qu'elles ne soient filtrées.

filter

L'ID du filtre à appliquer. La Types de filtres page du manuel liste les filtres disponibles.

Si non spécifié, FILTER_DEFAULT sera utilisé, ce qui est équivalent à FILTER_UNSAFE_RAW. Cela reviendra à n'avoir aucun filtre en place par défaut.

options

Tableau associatif d'options ou des drapeaux. Si le filtre accepte les options, les drapeaux peuvent être fournis dans le champ "flags" du tableau. Pour les fonctions de rappel, le type callable devra être passé. La fonction de rappel doit accepter un seul argument ; la valeur à filtrer et retournera la valeur, une fois le filtre appliqué.

<?php
// Pour les filtres acceptant les options, utilisez ce format
$options = array(
    
'options' => array(
        
'default' => 3// valeur à retourner si le filtre échoue
        // autres options ici...
        
'min_range' => 0
    
),
    
'flags' => FILTER_FLAG_ALLOW_OCTAL,
);
$var filter_var('0755'FILTER_VALIDATE_INT$options);

// Pour les filtres qui n'acceptent que des drapeaux,
// vous pouvez les passer directement
$var filter_var('oops'FILTER_VALIDATE_BOOLEANFILTER_NULL_ON_FAILURE);

// Pour les filtres qui n'acceptent que des drapeaux,
// vous pouvez également les passer sous forme de tableau
$var filter_var('oops'FILTER_VALIDATE_BOOLEAN,
                  array(
'flags' => FILTER_NULL_ON_FAILURE));

// Fonction de rappel du filtre
function foo($value)
{
    
// Format attendu: Surname, GivenNames
    
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'));
?>

Valeurs de retour

Retourne les données filtrées, ou FALSE si le filtre échoue.

Exemples

Exemple #1 Exemple avec filter_var()

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

L'exemple ci-dessus va afficher :

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

Voir aussi