filter_input_array
(no version information, might be only in CVS)
filter_input_array -- Gets multiple variables from outside PHP and optionally filters them
Description
mixed
filter_input_array ( int type [, mixed definition] )
This function is useful for retrieving many values without
repetitively calling filter_input().
Parameters
type
One of INPUT_GET, INPUT_POST,
INPUT_COOKIE, INPUT_SERVER,
INPUT_ENV, INPUT_SESSION, or
INPUT_REQUEST.
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.
This parameter can be also an integer holding a filter constant. Then all values in the
input array are filtered by this filter.
Return Values
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. Or if the flag FILTER_NULL_ON_FAILURE
is used, it returns FALSE if the variable is not set and NULL if the filter
fails.
Examples
Example 1. A filter_input_array() example
<?php error_reporting(E_ALL | E_STRICT); /* data actually came from POST $_POST = 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 = filter_input_array(INPUT_POST, $args);
var_dump($myinputs); echo "\n"; ?>
|
The above example will output: 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)
}
} |
|