# Filtrado de datos

# Introducción

Esta extensión provee filtros los cuales pueden ser utilizados para validar o sanear datos. Esto es especialmente útil cuando la fuente de datos contiene datos desconocidos (o externos), como entradas facilitadas por el usuario. Por ejemplo, estos datos pueden venir de un formulario HTML.

Principalmente hay dos tipos de filtrado: validación y saneamiento.

Un filtro de validación se usa para comprobar si los datos cumplen ciertos criterios. Estos filtros son identificados por las constantes `FILTER_VALIDATE_*`. Por ejemplo, el filtro `FILTER_VALIDATE_EMAIL` puede ser usado para determinar si los datos son una dirección de correo válida. Sin embargo, nunca alterará los datos de entrada.

El saneamiento, por otro lado, "limpiará" los datos, por lo tanto puede alterar los datos de entrada añadiendo o eliminando caracteres. Estos filtros son identificados por las constantes `FILTER_SANITIZE_*`. Por ejemplo, el filtro `FILTER_SANITIZE_EMAIL` eliminará los caracteres que no son apropiados para una dirección de correo electrónico. Sin embargo, los datos saneados no son validados para comprobar si son una dirección de correo válida.

Muchos filtros soportan flags opcionales que pueden ajustar el comportamiento del filtro. Estos flags son identificados por las constantes `FILTER_FLAG_*`. Por ejemplo, usando el flag `FILTER_FLAG_PATH_REQUIRED` con el filtro de validación `FILTER_VALIDATE_URL` requiere que la URL tenga una ruta (por ejemplo, `/foo` en `https://example.org/foo`).

- Instalación/Configuración
  - Instalación
  - Configuración en tiempo de ejecución
- Constantes predefinidas
- Ejemplos
  - Validación
  - Saneamiento
- Funciones de Filter
  - filter_has_var — Verifica si una variable de un tipo específico existe
  - filter_id — Devuelve el ID del filtro al que pertenece un filtro con nombre
  - filter_input — Toma una variable externa concreta por su nombre y opcionalmente la filtra
  - filter_input_array — Obtiene variables externas y opcionalmente las filtra
  - filter_list — Devuelve una lista de todos los filtros soportados
  - filter_var — Filtra una variable con el filtro que se indique
  - filter_var_array — Obtiene múltiple variables y opcionalmente las filtra
- Filter\FilterException — La clase Filter\FilterException
- Filter\FilterFailedException — La clase Filter\FilterFailedException

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open