Delicious Bookmark this on Delicious Share on Facebook SlashdotSlashdot It! Digg! Digg



PHP : Function Reference : Filter Functions : filter_var_array

filter_var_array

Gets multiple variables and optionally filters them (PHP 5 >= 5.2.0, PECL filter:0.11.0)
mixed filter_var_array ( array data [, mixed definition] )

This function is useful for retrieving many values without repetitively calling filter_var().

Parameters

data

An array with string keys containing the data to filter.

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.

Examples

Example 677. A filter_var_array() 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_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";
?>

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)
 }
}


Code Examples / Notes » filter_var_array

veysel zer

Numeric keys are not allowed in the definition array

Change Language


Follow Navioo On Twitter
filter_has_var
filter_id
filter_input_array
filter_input
filter_list
filter_var_array
filter_var
eXTReMe Tracker