filter_input_array ( int $type [, $definition ] )
Funkcja ta jest przydatna do pobrania wielu wartości powtarzalnych bez wywoływania filter_input ()
Parametry
- type
-
Jedna z INPUT_GET, INPUT_POST, INPUT_COOKIE, INPUT_SERVER, INPUT_ENV, INPUT_SESSION, lub INPUT_REQUEST.
- definition
-
Tablica określająca argumenty. Klucz jest ciągiem zawierającym nazwę zmiennej, i prawidłową wartość typu filtra , lub opcjonalnie tablicę określającą filtr, flagi i opcje. Jeśli wartość jest tablicą, kluczami są filtry, które określają rodzaj filtru, flagi, która określa wszystkie flagi, które stosuje się do filtra i opcje, które określają wszelkie opcje, które stosują się do filtra. Zobacz poniżej przykład dla lepszego zrozumienia.
Zwracane wartości
Tablica zawierająca wartości zmiennych w przypadku sukcesu, lub FALSE w przypadku porażki. Tablica będzie miała wartość FALSE, jeżeli filtr nie powiedzie się , lub NULL, jeśli zmienna nie jest ustawiona. Lub gdy jest użyta flaga FILTER_NULL_ON_FAILURE , to zwraca FALSE jeśli zmienna nie jest ustawiona i NULL, jeśli nie filtr.
Listing
// Example #1 A filter_input_array() przyklad
<?php
error_reporting(E_ALL | E_STRICT);
/* dane pochodzące z 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_REQUIRE_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_REQUIRE_ARRAY,
)
);
$myinputs = filter_input_array(INPUT_POST, $args);
var_dump($myinputs);
echo "\n";
?>
//Powyższy przykład wyświetli:
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)
}
}
Ranga: Administrator serwisu Punktów: 0