oujood.com

Fonction filter_var_array()

Fonction filter_var_array() est utile pour récupérer plusieurs valeurs sans appeler plusieurs fois la fonction filter_var()

chercher |

PHP cours tutorial

Fonction filter_var_array()

La fonction filter_var_array() récupère plusieurs variables et les filtre
Cette fonction est utile pour récupérer plusieurs valeurs sans appeler plusieurs fois la fonction filter_var().
Retourne:
Un tableau contenant les valeurs des variables demandées en cas de succès, ou FALSE si une erreur survient.
Un tableau de valeurs peut valoir FALSE si le filtre échoue, ou NULL si la variable n'est pas définie.
Syntax:

filter_var_array(array, args)

ParamètreDescription
arrayRequis. Un tableau avec les clés contenant les données à filtrer.
argsFacultatif. Un tableau définissant les arguments. Une clé valide est une chaîne de caractères contenant le nom de la variable et une valeur valide est soit le type d'un filtre, soit un tableau spécifiant le filtre, les drapeaux et les options. Si la valeur est un tableau, les clés valides sont filter qui spécifie le type du filtre, flags qui spécifie tous les drapeaux à appliquer au filtre, et options qui spécifie toutes les options à appliquer au filtre. Voir l'exemple ci-dessous pour une meilleure compréhension.
Ce paramètre peut également être un entier contenant une constante de filtre. Ensuite, toutes les valeurs du tableau d'entrée seront filtrées par ce filtre.

Exemple 1

Exemple avec filter_var_array()

Exemple :       Copier le code


<?php
error_reporting(E_ALL | E_STRICT);
$data = array(
    'product_id'    => 'libgd<script>',
    'component'     => '10',
    'versions'      => '2.0.33',
    'testscalar'    => array('2', '23', '10', '12'),
    'testarray'     => '2',
);

$args = array(
    'product_id'   => FILTER_SANITIZE_ENCODED,
    'component'    => array('filter'    => FILTER_VALIDATE_INT,
                            'flags'     => FILTER_FORCE_ARRAY, 
                            'options'   => array('min_range' => 1, 'max_range' => 10)
                           ),
    'versions'     => FILTER_SANITIZE_ENCODED,
    'doesnotexist' => FILTER_VALIDATE_INT,
    'testscalar'   => array(
                            'filter' => FILTER_VALIDATE_INT,
                            'flags'  => FILTER_REQUIRE_SCALAR,
                           ),
    'testarray'    => array(
                            'filter' => FILTER_VALIDATE_INT,
                            'flags'  => FILTER_FORCE_ARRAY,
                           )

);

$myinputs = filter_var_array($data, $args);

var_dump($myinputs);
echo "\n";
?>

L'exemple ci-dessus va afficher :

array(6) { ["product_id"]=> string(17) "libgd%3Cscript%3E" ["component"]=> array(1) { [0]=> int(10) } ["versions"]=> string(6) "2.0.33" ["doesnotexist"]=> NULL ["testscalar"]=> bool(false) ["testarray"]=> array(1) { [0]=> int(2) } }

Exemple 2

Exemple :       Copier le code


<?php
$arr = array
  (
  "name" => "utilisateur1 utilisateur",
  "age" => "41",
  "email" => "utilisateur1@example.com",
  );

$filters = array
  (
  "name" => array
    (
    "filter"=>FILTER_CALLBACK,
    "flags"=>FILTER_FORCE_ARRAY,
    "options"=>"ucwords"
    ),
  "age" => array
    (
    "filter"=>FILTER_VALIDATE_INT,
    "options"=>array
      (
      "min_range"=>1,
      "max_range"=>120
      )
    ),
  "email"=> FILTER_VALIDATE_EMAIL,
  );

print_r(filter_var_array($arr, $filters));
?> 

L'exemple ci-dessus va afficher :

Array ( [name] => Array ( [0] => Utilisateur1 Utilisateur ) [age] => 21 [email] => utilisateur1@example.com )



Retourner à la liste des filtres

Par carabde 20 Aout 2014



Voir aussi nos tutoriel :

fonction str_getcsv, str_getcsv

Analyse une chaîne de caractères CSV dans un tableau

fonction stristr

Version insensible la casse de strstr

Balise footer

Définit un pied de page d'un document ou de la section