Funkcja PHP filter_input_array()

Definicja i użycie

Funkcja filter_input_array() pobiera wiele danych wejściowych z zewnętrznego skryptu i je filtrowa.

Ta funkcja nie wymaga ponownego wywołania filter_input(), co jest bardzo przydatne przy filtrowaniu wielu zmiennych wejściowych.

Ta funkcja może uzyskać dane wejściowe z różnych źródeł:

  • INPUT_GET
  • INPUT_POST
  • INPUT_COOKIE
  • INPUT_ENV
  • INPUT_SERVER
  • INPUT_SESSION (Nie zaimplementowane jeszcze)
  • INPUT_REQUEST (Nie zaimplementowane jeszcze)

Jeśli sukces, zwraca prze filtrowane dane, jeśli niepowodzenie, zwraca false.

Gramatyka

filter_input(input_type, args)
Parametr Opis
input_type Wymagane. Określa typ wejścia. Zobacz powyższą listę możliwych typów.
args

Opcjonalnie. Określa tablicę parametrów filtra.

Dopuszczalne klucze tablicy to nazwy zmiennych. Dopuszczalne wartości to ID filtra, lub tablica określająca filtr, flagi oraz opcje.

Parametr może również być pojedynczym ID filtra, jeśli tak, wszystkie wartości w tablicy wejściowej są filtrowane przez określony filtr.

Wskazówki i komentarze

Wskazówka:Zobacz równieżPełny podręcznik referencyjny PHP FilterZobacz filtry, które można używać z tą funkcją.

Przykład

W tym przykładzie używamy funkcji filter_input_array() do filtrowania trzech zmiennych POST. Przyjmowane zmienne POST to imię, wiek oraz adres e-mail:

<?php
$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_input_array(INPUT_POST, $filters));
?>

Wynik będzie podobny do:

Array
 (
 [name] => Peter
 [age] => 41
 [email] => peter@example.com
 )