input_get_args

(no version information, might be only in CVS)

input_get_args -- Gets multiple variables from outside PHP and optionally filters them

Description

mixed input_get_args ( int type, array definition [, array data] )

Avertissement

Cette fonction est EXPERIMENTALE. Cela signifie que le comportement de cette fonction, son nom et concrètement, TOUT ce qui est documenté ici peut changer dans un futur proche, SANS PREAVIS! Soyez-en conscient, et utilisez cette fonction à vos risques et périls.

This function is useful for retrieving a large amount of values without repetitively calling input_get().

Liste de paramètres

type

One of INPUT_GET, INPUT_POST, INPUT_COOKIE, INPUT_SERVER, INPUT_ENV, INPUT_SESSION, or INPUT_DATA.

definition

An array defining the arguments. A valid key is a string containing a variable name and a valid value is either a filter type, or an array optionally specifying the filter, flags and options. If the value is an array, valid keys are filter which specifies the filter type, flags which specifies any flags that apply to the filter, and options which specifies any options that apply to the filter. See the example below for a better understanding.

data

Data to filter. Used if the type parameter is set to INPUT_DATA.

Valeurs de retour

An array containing the values of the requested variables on success, or FALSE on failure. An array value will be FALSE if the filter fails, or NULL if the variable is not set.

Exemples

Exemple 1. A input_get_args() example

<?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_FLAG_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_FLAG_SCALAR,
                           ),
    
'testarray'    => array(
                            
'filter' => FILTER_VALIDATE_INT,
                            
'flags'  => FILTER_FLAG_ARRAY,
                           )

);

//$myinputs = input_get_args(INPUT_POST, $args);
$myinputs = input_get_args(INPUT_DATA, $args, $data);

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

L'exemple ci-dessus va afficher :

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

Voir aussi

input_get()
filter_data()