Função PHP filter_input_array()

Definição e uso

A função filter_input_array() obtém múltiplas entradas de fora do script e as filtra.

Esta função não requer chamadas repetidas de filter_input(), muito útil para filtrar várias variáveis de entrada.

Esta função pode obter entrada de várias fontes:

  • INPUT_GET
  • INPUT_POST
  • INPUT_COOKIE
  • INPUT_ENV
  • INPUT_SERVER
  • INPUT_SESSION (Ainda não implementado)
  • INPUT_REQUEST (Ainda não implementado)

Se for bem-sucedido, retorna os dados filtrados, se falhar, retorna false.

Sintaxe

filter_input(input_type, args)
Parâmetro Descrição
input_type Obrigatório. Define o tipo de entrada. Consulte a lista acima de possíveis tipos.
args

Opcional. Define o array de parâmetros do filtro.

Chaves válidas de array são nomes de variáveis. Valores válidos são IDs de filtro, ou arrays que definem filtros, sinalizadores e opções.

Este parâmetro também pode ser um ID de filtro único, se for assim, todos os valores do array de entrada serão filtrados pelo filtro especificado.

Dicas e Comentarios

Dica:VerManual de Referência Completo do PHP Filter,veja os filtros que podem ser usados com essa função.

Exemplo

Neste exemplo, usamos a função filter_input_array() para filtrar três variáveis POST. As variáveis POST aceitas são nome, idade e endereço de 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));
?>

Saída semelhante a:

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