Najnowsze tutoriale tworzenie stron internetowych
 

PHP filter_input_array() Function

<PHP filtr referencyjny

Przykład

Sprawdź, czy zewnętrzny zmienna "email" zostanie wysłany do strony PHP, poprzez "get" metody, a także sprawdzić, czy jest to prawidłowy adres e-mail:

<?php
if (!filter_input(INPUT_GET, "email" , FILTER_VALIDATE_EMAIL)) {
    echo("Email is not valid");
} else {
    echo("Email is valid");
}
?>
Uruchomić przykład »

Definicja i Wykorzystanie

filter_input_array() funkcja otrzymuje zewnętrzne zmienne (eg from form input) i ewentualnie ich filtruje.

Funkcja ta jest przydatna do pobierania / filtrowanie wiele wartości zamiast dzwonić filter_input() wiele razy.


Składnia

filter_input_array( type, definition, add_empty )
Parametr Opis
type Wymagany. Typ wejścia do sprawdzenia. Może być jedną z następujących czynności:
  • INPUT_GET
  • INPUT_POST
  • INPUT_COOKIE
  • INPUT_SERVER
  • INPUT_ENV
definition Opcjonalny. Określa tablicę argumentów filtracyjnych. Poprawny klucz tablicy jest nazwa zmiennej, a prawidłowa wartość to filtr lub identyfikator lub tablicę określając filtr, flagi i opcje. Parametr ten może być również pojedynczy filtr / ID; Następnie wszystkie wartości w tablicy wejściowego są filtrowane przez filtr określony
add_empty Opcjonalny. Wartość logiczna. Gdy ustawiony na TRUE to dodać brakujące klucze jako NULL do wartości zwracanej. Domyślną wartością jest PRAWDA

Szczegóły techniczne

Zwracana wartość:

Zwraca tablicę zawierającą wartości zmiennych w przypadku powodzenia, FALSE w przypadku porażki

Wersja PHP: 5.2.0+

Przykład

W tym przykładzie używamy filter_input_array() funkcji filtrowania trzy zmienne POST. Otrzymane zmienne POST to nazwisko, wiek i 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));
?>

Wyjście kodu powinny być:

Array
  (
  [name] => Peter
  [age] => 41
  [email] => [email protected]
  )

<Kompletny filtr referencyjny PHP